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

ID: 38764984
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
ID: 38765058
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

ID: 38765124
@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.
Backup Solution for AWS

Read about how CloudBerry Backup fully integrates your backups with Amazon S3 and Amazon Glacier to provide military-grade encryption and dramatically cut storage costs on any platform.


Expert Comment

ID: 38766180
- 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
ID: 38776357
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

ID: 38796089
The issue wasn't exactly resolved but mitigated.

Featured Post

Edgartown IT Case Study

Learn about Edgartown's quest to ensure the safety and security of the entire town's employee and citizen data. Read the case study!

Question has a verified solution.

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

Scenario:  You do full backups to a internal hard drive in either product (SBS or Server 2008).  All goes well for a very long time.  One day, backups begin to fail with a message that the disk is full.  Your disk contains many, many more backups th…
You might have come across a situation when you have Exchange 2013 server in two different sites (Production and DR). After adding the Database copy in ECP console it displays Database copy status unknown for the DR exchange server. Issue is strange…
This tutorial will walk an individual through locating and launching the BEUtility application and how to execute it on the appropriate database. Log onto the server running the Backup Exec database. In a larger environment, this would generally be …
This tutorial will walk an individual through the steps necessary to enable the VMware\Hyper-V licensed feature of Backup Exec 2012. In addition, how to add a VMware server and configure a backup job. The first step is to acquire the necessary licen…

685 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