WTStek.com Windows Terminal Server, Virtualization, Application Delivery, Windows Software Development, Market Analysis, Training Classes and more...
Navigation

Virtualization Solutions

... Articles and Whitepapers
... Downloads
... Internet Resources

Books

... Windows Server 2008 Terminal Services
... Windows Server 2003 Terminal Services

My Profile

... About this Web Site
... Benny's Biography
... Presentations 2008, 2007, 2006, 2005, 2004 and earlier

 


Awards

 

Microsoft MVP

 

CTP

 

Provision Networks / Quest VIP

 

Scalability of 64-bit Terminal Server Platforms

Posted by Benny Tritsch on April 24, 2007 updated on July 17, 2007

[Introduction] [Test Environment] [Tools and Scripts] [Methodology] [Results] [Conclusions]
[Appendix 1: Performance Counters Used] [Appendix 2: Step-by-Step Description]

Results

Test Server with 4 GB Memory

One test was done comparing 64-bit and 32-bit versions of Windows Server 2003 R2 running on a DELL PowerEdge 850 Server with one Intel XEON 3.0 GHz Dual-Core processor and four gigabyte of RAM. Every minute, 10 new users were logged in to each test system until its resources are exhausted.

 

64-bit – Windows Server 2003 x64
2 Intel CPU Cores, 4 GB RAM
32-bit – Windows Server 2003 x86
2 Intel CPU Cores, 4 GB RAM

 

  • 159 active sessions

  • 1,100 processes

  • 102 x Command shell

  • 99 x Notepad

  • 98 x Acrobat Reader

  • 86 x Microsoft Word

  • 200 active sessions

  • 1,400 processes

  • 125 x Command shell

  • 123 x Notepad

  • 118 x Acrobat Reader

  • 112 x Microsoft Word

 

On the 32-bit x86 Windows system, approximately 20% more active sessions were opened and applications were launched successfully. The explanation for this observation is quite obvious. Launching applications on x64 Windows requires more space in memory compared to launching them on x86 Windows.

The reason for this partially lies in the WOW64 subsystem which provides a high-performance 32-bit Windows environment that enables x64 Windows to take full advantage of 32-bit Windows applications. But on x64 Windows 32-bit applications require more space in memory because their data is stored in 64-bit structures. Storing 32-bit data in 64-bit data structures is responsible for higher memory consumption compared to 32-bit data structures.

The same is true for 64-bit applications. There data is internally organized in 64-bit structures, which requires more space compared to the same data in 32-bit structures. For example, the 32-bit version of Notepad typically requires 2.5 megabytes of memory on x86 Windows, while the 64-bit version of Notepad consumes 4.8 megabytes of memory on x64 Windows.

The higher consumption of memory is the reason why the 64-bit system is exhausted at an earlier stage as the 32-bit system. In both systems the available memory is trimmed by the memory manager as much as possible. But at a certain point, there is no more physical memory available, which results massive paging operations to the hard disk.

There is not much difference between the most important performance counters if the two test systems are compared.

Test Server based on AMD CPUs with 16 GB RAM

This test was done on 64-bit and 32-bit versions of Windows Server 2003 running on a Fujitsu Siemens Primergy BX630-A with two AMD 2.8 GHz Dual-Core processors and 16 gigabyte of RAM. Similar to the previous test, 10 new users were logged in to each test system until its resources are exhausted.

 

64-bit – Windows Server 2003 x64
4 AMD CPU Cores, 16 GB RAM
32-bit – Windows Server 2003 x86
4 AMD CPU Cores, 16 GB RAM

 

 

  • 322 active sessions

  • 2,900 processes

  • 264 x Command shell

  • 261 x Notepad

  • 256 x Acrobat Reader

  • 252 x Microsoft Word

  • 319 active sessions

  • 2,800 processes

  • 243 x Command shell

  • 243 x Notepad

  • 243 x Acrobat Reader

  • 237 x Microsoft Word

 

This time, almost the same number of active sessions was started on both test systems. However, on the x86 Windows system approximately 10% less applications were launched.

Significant differences regarding performance counters can be observed with available memory. On x64 Windows almost all memory was consumed, while x86 Windows was only able to use a little more than half of the available megabytes. At the same time (11:15:31) when it started to be hard for x86 Windows to take advantage of the existing memory, the average disk queue length and page reads per second counters also showed a significant rise. At the same time it was possible to observe that user experience is degraded significantly on x86 Windows, which results in poor performance when opening application windows.

When the 32-bit system finally runs out of system PTEs, no more users can log in. This limiting factor does not exist anymore on 64-bit systems. But with "only" 16 GB RAM, this does not create a really significant difference in the number of users who can log in – even if the last 20-30% of users logging on to the 32-bit machine cannot do much with their sessions. Mostly not even the shell is loaded for these users.

Test Server based on Intel CPUs with 16 GB RAM

This test was done on 64-bit and 32-bit versions of Windows Server 2003 running on a Fujitsu Siemens Primergy RX300S2-A with two Intel 2.8 GHz Dual-Core processors and 16 gigabyte of RAM. During one test run, the system had Hyperthreading turned off, during the other test run, it had Hyperthreading turned on. Similar to the previous test, 10 new users were logged in to each test system until its resources are exhausted.

 

64-bit – Windows Server 2003 x64
4 Intel CPU Cores, 16 GB RAM
64-bit – Windows Server 2003 x64
4 Intel CPU Cores with Hyperthreading, 16 GB RAM

 

 

  • 270 active sessions

  • 2,500 processes

  • 228 x Command shell

  • 223 x Notepad

  • 222 x Acrobat Reader

  • 214 x Microsoft Word

  • 341 active sessions

  • 2,900 processes

  • 252 x Command shell

  • 241 x Notepad

  • 238 x Acrobat Reader

  • 231 x Microsoft Word

 

The result showed some difference between Hyperthreading turned off and on. However, the general tendency regarding scalability of x64 Windows stays the same.

 

Next