Personalized Community is here!
Quickly customize your community to find the content you seek.
Have questions on moving to the cloud? Visit the Dynamics 365 Migration Community today! Microsoft’s extensive network of Dynamics AX and Dynamics CRM experts can help.
2021 Release Wave 2Discover the latest updates and new features releasing from October 2021 through March 2022.
2021 release wave 2 plan
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Community | FastTrack Program | Finance and Operations TechTalks | Customer Engagement TechTalks | Upcoming TechTalks | All TechTalks
We are experiencing forms that load slowly in a terminal server environment. We are using CRM 2013 On-Premise in a Server 2012 R2 environment. In IE11 on a terminal server a specific form takes up to 10 seconds to load. The same form with the same user in IE11 on a local machine on the same network will load the form in 2 seconds or less. Chrome in both environments is a bit faster, but Chrome on the terminal is still far slower than IE on the desktops.
This is true even if there are no other users or loading on the terminal server. The server is not using many of the resources available to it. Not sure where to look next to troubleshoot this. Any ideas?
Hello CRM User 12345,
Have a look at the performance/energy settings on the terminal server AND also the hardware. If there is a power management setting which slows down CPU or disables certain cores on low usage might be a cause.
I think this issue is related with IE settings:
1. Delete temporary files and cache, cookies:
Close Internet explorer and go to Start > Run > Internet Options
Click on Tools > Internet Options > General Tab > Delete under browsing history section > Select the options and Delete
On the general tab clicked on Settings > View Files > and deleted all the temp files
2. Check for Trusted Sites:
Added trusted sites https://*.microsoft.com , https://*.dynamics.com and https://*.live.com
3. The Zoom Setting of the Internet explorer:
The recommended Zoom setting of the Internet Explorer is 100%.
4. Update and set the Max Connections Per Server (FEATURE_MAXCONNECTIONSPERSERVER and FEATURE_MAXCONNECTIONSPER1_0SERVER) for Internet Explorer by following the below steps:
You can directly run the Fix It tool from the KB article support.microsoft.com/.../282402 which will fix the FEATURE_MAXCONNECTIONSPERSERVER and FEATURE_MAXCONNECTIONSPER1_0SERVER
Manually make changes to following registry keys:
NOTE: Take the back up of registry keys before making any changes to them
i. Go to "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPERSERVER"
• Click on Edit menu > Select New > Click on Dword value (32 bit).
• Name the value: iexplore.exe > Value data: 10 > Base: Decimal
ii. Locate the registry "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet
• Name the value: iexplore.exe > Value data: 10 > Base: Decimal.
5. For memory leak that occurs when you open a Web page that contains a circular reference in an iframe:
Go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl
• On the Edit menu, point to New, and then click Key.
• Type FEATURE_ADDITIONAL_MEMORY_CLEANUP_KB975736, and then press ENTER.
• Right-click FEATURE_ADDITIONAL_MEMORY_CLEANUP_KB975736, point to New, and then click DWORD Value.
• Type Iexplore.exe, and then press ENTER.
• Right-click Iexplore.exe, and then click Modify.
• In the Value data box, type 1, and then click OK.
KB Article: support.microsoft.com/.../975736
6. Increase the Port range:
Locate the MaxUserPort key in the registry:
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters (select Parameters)
• Check if the MaxUserPort registry exist or not. If yes set the Decimal value to 20000. If no follow the below steps:
On the Edit menu, point to New, click DWORD Value and then add the following registry value:
• Value Name: MaxUserPort
• Value: 20000
• Base: Decimal
7. Change timeout on connection:
Locate the TcpTimedWaitDelay key in the registry:
• Check if the TcpTimedWaitDelay registry exists or not. If yes set the Decimal value to 300. If no follow the below steps:
• Value Name: TcpTimedWaitDelay
• Value: 300
• Base: Decimal
Thank you for using Microsoft Dynamics CRM Communities,
Jimena Gaona | Support Engineer | Microsoft Dynamics CRM
Hi Jimena, these changes had no effect on this challenge.
Remon, there are no power management settings that would reduce CPU availability or performance.
The terminal server is a virtual running Server 2012 R2 while the other machines that see much faster form loads are running Windows 8.1
I would recommend installing Fiddlr on the terminal server and interacting with CRM when it's on. Look at the requests that are hanging up the most. Maybe a screenshot of the time delays might help.
also, is there different antivirus software running on the terminal server? I've seen AV software dramatically increase page loads of CRM before.
finally, is the virtual server your terminal server on properly allocated? If RAM or CPU us overloaded, it's entirely possible you're seeing the Terminal Server's RAM actually being spun up from the virtual server's hard drive, which would really slow things down. If you can physicalize the terminal server, I would. Servers that require user interaction as such aren't ideal use cases for virtualization, as they're already doing some RAM overallocation between user accounts and the like.
Symantec Endpoint is running on the terminal server.
Here are some results from Fiddler. I'm not sure if this is what would be helpful. The CRM is performing a Save and New operation:
This is IE11 on the terminal server (production environment):
Chrome on the terminal server:
Chrome on Windows 8.1:
I am unable to load CRM in IE on Windows 8.1 while Fiddler is running. It is faster than Chrome on the TS.
Ok, so looking at the JS long load times, I'm betting it's because of the hardware acceleration support that IE and Chrome use for rendering pages and processing script. Since that can use the video card, a virtual terminal server is innately at a disadvantage, since it has no dedicated video card. You simply can't render the pages in software as fast as hardware.
As far as the virtualization goes, we had previously been running CRM 2011 on a virtual Server 2008 R2 and saw this same form load in 2 seconds or less vs the 10 seconds it takes now.
Well, CRM 2013 and 2011 do have different UIs, so that may be one point of difference.
I would recommend turning off Symantec Endpoint for testing purposes, and see if things perform better.
Will test out an environment without Endpoint and report back. Another data point: the form loads just as slowly on a physical Server 2012 R2 box.
Turning off Symantec makes no difference to the performance of the form. Not sure where to go next. The one consistent thing is that Server 2012 R2 in any environment is far slower to load the form than desktop versions of Windows. While I see that the UIs have changed from 2011 to 2013, we are still able to get equally good performance from 2013 on Windows 8.1 as we used to get from 2011.
Well, you've stumped me. The only other thing I can suggest is try installing Server 2012 on one of your machines that has Windows 8 just to see if the hardware difference between what your desktops and what your servers are matters.
Alas, I had hoped that this would be a known or common issue with a possibly simple resolution. Will try a Server 2012 install on another machine to see the effect.
Installed Server 2012 R2 on a laptop that had been loading the forms quickly with Windows 8. Instant slow down. So the issue is related to the Server OS (or environment) in some way.
We was experiencing the same problem.
The solution was the Power Setting on the Server or on the Hyper-V Host, if you use virtualization. Changing the Power Plan from Balanced to High Performance solved the issue for us.
There is a KB from MS about this: support.microsoft.com/.../2207548
Business Applications communities