Improve company productivity with a Business Account.Sign Up


Deploying Printers via GPO in 2008 R2 - How do I improve it's performance?

Posted on 2011-09-27
Medium Priority
Last Modified: 2012-05-12

We've got some 60 users spread across 3 RDS Servers all using Server 2008 R2.  All users stick to their own RDS Server, only changing if there is an issue preventing them from connecting to it, and they use one of the others.  All users see all of the print queues.

We set up all of the print queues in Print Management and then deployed them from there to a GPO using the 'per user' setting, but have noticed that there is quite a performance hit from how the printers were set up in our old 2003 server, where we had all printers set up as local printers.  Performance hit as in - when they first log in it takes a while to populate all 25 print queues (yes 25 for 60 users - we have managed to cut this down from 40-50-odd in the old 2003 enviro!), and also if they do a resource intensive job, such as running a report that populates an Excel spreadsheet with data from our SQL Server - the report takes about 30secs to run.  About 30 secs to 2 mins after the report has been finished - or they have logged onto the server they printers appear again.... gradually.  Physical printing wise - there are no issues.  Often if a user's default printer doesn't appear within a given timeframe, it will select the first printer on the list..... to the annoyance of the user!

So, how can I improve the speed at which printers populate?  In terms of what processing is done, is the a difference between deploying by computer and deploying by user?  From my reading I understand that when you update printer preferences it will by default auto update - by user it will do this for each user - does it do the same per computer?  Or does it just do it once per computer?  Is there anywhere else that we can gain performance in the GPO?

Please note - I'm not looking for 'stab in the dark' answers - I'm after informed, experienced advice in this field.  We seem to be pioneers with this in our own circle of IT providers - but I can't believe that there isn't more experienced knowledge out there that we can tap!
Question by:bosshognz
  • 3
  • 2

Expert Comment

ID: 36714888
There has always been printing performance issues with RDS or ICA solutions, and you're not alone.  Currently we deploy printers per user, because it suits us to do so.  In my environment however, it's the FIRST login which is slow - subsequent logons are not

We use GPO's too, but we rely on the "Printers" policy in the Client Side Extensions, rather than making Print Management create GPO's for us.  Individual printers can still be filtered out per user or per group.  

Printers Client Side Extention
Use "Run in logged-on user's security context (user policy option)" to ensure it propagates to the user's profile, and this is where you set Item-level targetting for per user or per group.

Additional Settings
If you're using print management, then it is probably creating one policy per printer - this does not help you at all - increased policies means slower login performance.

Another thing to note - printers which are deployed at a user level are stored in the user's profile, which is why I use the action "Update" rather than "Create".  With Update, if the printer is there, it doesn't recreate it

And lastly - do you use roaming profiles for these users?  If they're getting a new profile each time they are logging on, the only way you will be able to improve the speed is to install the printers on the servers.

Try with a group of users, deploying the printers via a new single policy which contains all the printers, plus all the targetting you desire - and see if this improves performance.

I do remember supporting an office where they had 34 personnel and 37 printers.

Author Comment

ID: 36714961
Hi Lester - thanks for replying!
Print Management - reason I chose this is because it seems to be the best/easiest way to deploy printers - according to MS..... I mean you set up the printers in Print Management - you create a GPO on AD and then you add the printers to the GPO by right clicking on them - it seems so simple that anything else seems to be a legacy way of doing it.

The 'Per Computer' 'Per User' settings are in the Printer Deployment window when you deploy from Print Management - but basically it just picks what side of the GPO it uses - User or Computer Config.

We have 2 Print GPOs - for the different groups of users that never use each other's printers - not doing 1 GPO per Printer.

Roaming profiles - yes we use these as we want the user experience across the 3 RDS servers to be the same - IE: no matter what server they log into they see the same.  For other reasons we have also set the local profiles to delete when the user logs out.  

I have added one printer to a new GPO on using the 'Per Computer' setting to see what performance gains (if any) we can get from it.

To be honest - we'd love to have 1 print queue per printer - there are only 12 printers in the organisation - but each printer has to have 2-3 queues.  No way around it.  We did cut it down from 4-6 queues per printer - so we are making some way into it!

Accepted Solution

Lester_Clayton earned 1000 total points
ID: 36715486
For other reasons we have also set the local profiles to delete when the user logs out.  

This does unfortunately mean a performance hit - the profile has to be downloaded to the server and the printers in the profile or the GPO have to be-regenerated for the user profile :(

I'm not sure if I can offer other suggestions to improve it I'm afraid.
Has Powershell sent you back into the Stone Age?

If managing Active Directory using Windows Powershell® is making you feel like you stepped back in time, you are not alone.  For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why.

LVL 10

Assisted Solution

David_Ingledew earned 1000 total points
ID: 36715689
I'm going to head down a different route..and look to reduce the queue count, thus speeding it up.

"To be honest - we'd love to have 1 print queue per printer - there are only 12 printers in the organisation - but each printer has to have 2-3 queues.  No way around it.  We did cut it down from 4-6 queues per printer - so we are making some way into it!"

Why is this?

Author Comment

ID: 36719561
For the user's sake - and our sanity.  It is a long story and completely off topic - short story is that all print jobs are charged to clients and they don't like making mistakes by printing double or single sided by mistake.  As I said - completely off topic - and is not able to be changed.

I don't want to go back to local printer creation on each of the RDS servers - I used to spend DAYS on these when fixing issues across all the queues on all the printers.  The idea was to eleviate IT Support work and  human error by consolidating all printers to the one place and publish out via GPO.  I would like to see success coming from what using what looks like MS Best Practice way of doing things - I know thats not always possible.

Can anyone tell me about per user vs per computer - is there a performance gain using one over the other?  Whats the difference between the two on an RDS enviro?  I haven't found any documentation on them as yet.

Author Closing Comment

ID: 36928585
We've split out the printer GPO into  further - meaning people have less print queues to load on log in.  There is a slight noticeable difference.  

And we're also revisiting the local profile deletion on the servers.  This will of course improve performance no end.

Thanks for the help :)

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

When you try to share a printer , you may receive one of the following error messages. Error message when you use the Add Printer Wizard to share a printer: Windows could not share your printer. Operation could not be completed (Error 0x000006…
This article provides a convenient collection of links to Microsoft provided Security Patches for operating systems that have reached their End of Life support cycle. Included operating systems covered by this article are Windows XP,  Windows Server…
This tutorial will walk an individual through the steps necessary to configure their installation of BackupExec 2012 to use network shared disk space. Verify that the path to the shared storage is valid and that data can be written to that location:…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …

606 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question