Skip to main content

Notifications

Community site session details

Community site session details

Session Id :

Tuning Remote Desktop Services 2012 for Microsoft Dynamics GP

Lucas Miller Profile Picture Lucas Miller

Hello Community!

I was recently working with a couple customers who started seeing performance issues after upgrading Dynamics GP.  After troubleshooting the issue we determined that it was actually the fact that their GP upgrade also included updating their Terminal Server machine to Windows Server 2012 or later was actually the source of their issue.  Logging into Dynamics GP on a client OS or Windows Server 2008 still show the performance they were expecting.

After working with the Windows team we found that the Remote Desktop Services feature was rewritten in Windows Server 2012, specifically around how the available resources on the server are pooled to allow multiple users to log into the machine at once.  As part of this pooling a functionality called TSFairShare was introduced to manage how resources are divided up.  This setting allows you to tune the pooling behavior and has resolved performance issues for a couple of our Dynamics GP customers.  It's just that setting, which can be configured using the following steps, that you can attempt to address performance issues you are seeing over remote connections.

First, in the registry (Start > Run > regedit) you will want to go to HKLM\System\CurrentControlSet\Services\TSFairShare and set EnableFairShare to 0 for both Disk and NetFS options.  As with all registry changes you will want to be sure that you made a backup of the affected keys before you do this.

RegEdit.PNG

Second, open the Group Policy Editor on the RDS server (Start > Run > gpedit.msc) and navigate to Computer Configuration/Administrative Templates/Windows Components/Remote Desktop Services/Remote Desktop Session Host/Connections.  There we enabled the 'Turn off Fair Share CPU Scheduling' setting to disable this feature.

GroupPolicy.PNG

After making those changes reboot the server to force them into effect.  For one customer we saw a posting process go from ~75 minutes before making this change to around ~25 minutes after.

This information has also been included in the Optimizing and Maintaining Performance for Microsoft Dynamics GP white paper, which can be downloaded from here.

Let us know if you have any questions on this.

Lucas

Comments

*This post is locked for comments

  • ImAPilot Profile Picture ImAPilot 70
    Posted at
    This is still applicable in our case with Hyper-V on Windows Server 2019 and GP 18.3. Note the updated link to the GP performance whitepaper after the migration from Microsoft Business Solutions to Microsoft Docs is here: docs.microsoft.com/.../mdgp2010_whitepaper_performance
  • ImAPilot Profile Picture ImAPilot 70
    Posted at
    This is still applicable in our case with Windows Server 2019 and GP 18.3. Note the updated link to the GP performance whitepaper after the migration from Microsoft Business Solutions to Microsoft Docs is here: docs.microsoft.com/.../mdgp2010_whitepaper_performance
  • Community Member Profile Picture Community Member
    Posted at

    Béat,

    Did making this change provide a positive outcome in your environment? We are currently suffering from long posting processes.

  • Lucas Miller Profile Picture Lucas Miller
    Posted at

    MKent,

    Correct, these are only present when you have the RDS role installed.  That's also the only time these customer's saw any performance issues in GP, which lead us down this path.

    Beat,

    Those registry keys need to be set to 0 to ensure TSFairShare is disabled.  If you're still seeing the issue after changing just the group policy it could be an issue with the Disk or Network being throttled, so I'd point you back to the registry.

    Besides that, when it comes to login performance you should consider if it is before or after you use the actual login window.  If it is before then it's like something like an anti-virus application scanning folders/files that are needed, a large number of records in your dex.ini (including network printer locations that need to be pinged) or dictionaries listed in the Dynamic.set file that are located on other machines.  Slow performance after you login is typically something on the SQL Server side (e.g. a ton of reminders tied to SmartList Favorites or something along those lines).

  • Beat Bucher  GP Geek  GPUG All Star Profile Picture Beat Bucher GP Gee... 28,058 Moderator
    Posted at

    Hi Lucas,

    I'm wondering if this will cure my problems that I have encountered since upgraded to 2013R2 on my TS / RDS server... I've had very long start-up times for the GP client, in some cases up to 10 min..

    The reg keys were already set to (1) in my 2012R2 server, but the GPO setting was not enabled, so I wonder if that will make the difference.. going to apply and reboot the server tonight.

  • Community Member Profile Picture Community Member
    Posted at

    Is this somehow a registry entry specific to Windows 2012 RDS VM - I do not see this on my stand-alone installation of 2012 R2

  • Lucas Miller Profile Picture Lucas Miller
    Posted at

    bac26,

    The customer I mentioned in the article was hosting Citrix on VMWare.  We adjusted this setting within the VM OS to achieve the result.  I don't see why it would be any different on Hyper-V since it's a Windows Server feature rather than a virtualization one.

  • bac26 Profile Picture bac26 2,268
    Posted at

    Is this for Hyper V or VMWare?   Should help both but curious on the huge time savingss