Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


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
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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.
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

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

Are your AD admin tools letting you down?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

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 article shows how to get a list of available printers for display in a drop-down list, and then to use the selected printer to print an Access report or a Word document filled with Access data, using different syntax as needed for working with …
This tutorial will walk an individual through the steps necessary to join and promote the first Windows Server 2012 domain controller into an Active Directory environment running on Windows Server 2008. Determine the location of the FSMO roles by lo…
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 …

688 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