Windows Server 2008 R2 CPU Performance Issue

Posted on 2013-01-10
Last Modified: 2013-01-19
I'm going to pose an interesting issue I have been tracking the past week or so.

The environment is Windows Server 2008 R2 Standard. It has Terminal Services installed and is used as a Terminal Server. The server is TS1. TS1 is a virtual guest running on a Windows Server 2008 R2 SP1 Enterprise host server. TS1 has 20gb of RAM allocated to it, 4 virtual cores, and has its .vhd stored on our SANS.

The server is used by roughly 50 users on a daily basis. Common applications are Office, programs that have a web interface and are hosted on the internet by a vendor, and various locally installed proprietary programs.

The problem that is being seen is high CPU usage. Getting into the details of it, when the CPU utilization is high, plateaued at 100%, users do experience a degraded experience. Office applications will hang up, keystrokes to the proprietary applications are delayed a second or two, and overall slowness in manipulating their session.

The high utilization is fairly consistent, with CPU usage dipping as low as 65%, generally staying above 90%. At certain points in the day, such as during early morning when users are connecting in, CPU usage stays peaked at 100%. Examining the usage these times show a consistent pattern. Many users have at least one process of iexplore.exe running at 6-15% cpu usage, never dipping below 5%. With a total of 50ish users this adds up to a maxed out CPU.

Examining several individual users sessions, their instances of internet explorer aren't appearing to be doing anything special. Browsing to common websites,,,, etc. Some users were not even actively browsing, merely had the site up on their session.

Examining several processes of iexplore.exe that were continually pegging the CPU, they all end up looking like the same thing. I fired up the wonderful Process Explorer from Systernals, and did a little poking around on the processes and found that one thread is consistently the culprit, iertutil.dll!ordinal503+0xe2. Even when the users are not using the browser but just have it up, this thread will go from a wrwaitforuser to ready back to wrwaitfuruser state over and over.

A few looks around on google didn't reveal much about iertutil.dll!ordinal503+0xe2. Most results were posts about "Missing Ordinal###" when trying to launch IE. I did come across a software analysts post saying that in IE8.0, ordinal 503 is IsoRegisterWinProcComponent.

Just to make sure it wasn't too high of user load, another server was setup, TS2, with the same OS, same applications, and about 1/3 of the users were migrated to use that server. On the new TS2 the issue is not apparent. The same users who were previously pegging out 5-15% of the CPU on their own were now not a problem.

Any ideas on what might be the source of the crazy high cpu utilization on this TS1?
Question by:bankonit

Expert Comment

Comment Utility
check the "working directory" of the users
if they are using office application for instance on the terminal server TS1
i believe you should assign them a local folder in their PC's as a"working forlder" other wise as soon as the users start works and open files the RAM consumption will increase and since there a certain limit the RAM can be utilised then the system will start kick some "non-active" application to hard disk and this will utilize your CPU

I hope this answer your question
LVL 18

Expert Comment

by:Sushil Sonawane
Comment Utility
make sure your disconnect and idle session will be log off a particular time because idle & disconnected sessions may lead high CPU utilization and it use the system process (PID 4).

Author Comment

Comment Utility
@sharifmcd - Not sure what you mean specifically by "working directory". The users do have redirected folders for their desktop, documents, music, pictures, etc to another server on the network.

@sushil84 - The idle and disconnected sessions are set to be logged off after 1 hour of inactivity.
Free Gift Card with Acronis Backup Purchase!

Backup any data in any location: local and remote systems, physical and virtual servers, private and public clouds, Macs and PCs, tablets and mobile devices, & more! For limited time only, buy any Acronis backup products and get a FREE Amazon/Best Buy gift card worth up to $200!


Expert Comment

Comment Utility
- If you login to the console (not rdp). Do you still face the same high cpu and slowness or it is only the rdp sessions experiencing this
- How does the system recover from it. Do you need to reboot it or it recovers on its own
- If you are saying that IE from each session is consuming around 5% of cpu then what is the behaviour if you kill these IE processes from the console session for the users does the system comes back to normal and runs fine

Accepted Solution

bankonit earned 0 total points
Comment Utility
The decision was reached to officially migrate users to the second terminal server, spreading the load. While the pattern is still the same, with IE spiking up the CPU, with the lower amount of users it isn't maxing out so performance is acceptable.

Author Closing Comment

Comment Utility
The issue wasn't exactly resolved but mitigated.

Featured Post

Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

Join & Write a Comment

I was asked if I could set up a fax machine so that incoming faxes were delivered to people's Exchange inboxes and so that they could send faxes from their desktops without needing to print the document first.  I knew it was possible but I had no id…
The recent Microsoft changes on update philosophy for Windows pre-10 and their impact on existing WSUS implementations.
This tutorial will give a an overview on how to deploy remote agents in Backup Exec 2012 to new servers. Click on the Backup Exec button in the upper left corner. From here, are global settings for the application such as connecting to a remote Back…
This tutorial will walk an individual through setting the global and backup job media overwrite and protection periods in Backup Exec 2012. Log onto the Backup Exec Central Administration Server. Examine the services. If all or most of them are stop…

772 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

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now