| ... | Articles and Whitepapers |
| ... | Downloads |
| ... | Internet Resources |
| ... | Windows Server 2008 R2 Remote Desktop Services |
| ... | Windows Server 2003 Terminal Services |
| ... | About this Web Site |
| ... | Benny's Short Profile |
| ... | Benny's Biography |
| ... | Presentations 2010, 2009, 2008, 2007, 2006, 2005, 2004 and earlier |
Posted by Benny Tritsch on November 25, 2004 – updated on January 31, 2005
[Introduction] [Test Setup] [Testing Methodology] [Analysis 1] [Analysis 2] [Analysis 3]
The first test covered Windows Server 2003 with HyperThreading turned on by the appropriate BIOS settings. During one hour and 10 minutes 100 users were logged in by using the testing methodology described above. The Terminal Server system on a hardware platform with 8 physical CPUs and HyperThreading turned on showed increasing symptoms of heavy load. After the 100 users were logged in, no more user logins were performed for 15 minutes. Still the CPU load showed a permanent load of 20% for all CPUs.
When 20 additional users were logged in, the used physical memory was beyond 4 gigabytes. Moreover, the system showed substantial saturation effects. If a new application was started in the administrator's session, it took more than 60 seconds until the initial application window was displayed.
The following image shows the number of active Terminal Server sessions over time. Each unit on the x axis represents 5 seconds (1,000 units = 5,000 seconds = 83 minutes = 1 hour and 23 minutes).

Within the same period, the amount of available physical memory dropped from almost eight gigabytes to approximately three and a half gigabytes. Available Bytes is the amount of physical memory immediately available for allocation to a process or for system use.

Between 1,000 and 1,200 and between 1,400 and 1,650 on the x axis, no new user logged in. The users of the active sessions did not interact with their applications. However, average CPU load stayed at a rather high level of 20% during this time. Please keep in mind that we are talking about logical 16 CPUs (= eight Hyperthreaded physical CPUs) during this test.

Another exceptional result was the increase of the Processor Queue Length during the test. It did not stabilize even during the periods of inactivity. Therefore, we have a strong indication that the processors were consuming a lot of resources while they tried to synchronize their tasks. This seemed to be directly related to the number of processes running on the Terminal Server platform.
