380 likes | 636 Views
Non Disclosure Agreement. This presentation is confidential. By virtue of your relationship with Citrix, you are bound to retain in confidence all information in this presentation.. . Today's Agenda. Server sizing techniquesAnalyzing server bottlenecksScalability RecommendationsEmerging tec
E N D
1. CITRIX PRESENTATION SERVER USER SCALING IN 32-BIT AND 64-BIT SERVER ENVIORNMENTS John D’Agati
Sr. Engineer, Citrix Systems Inc.
2. Non Disclosure Agreement This presentation is confidential. By virtue of your relationship with Citrix, you are bound to retain in confidence all information in this presentation.
3. Today’s Agenda
Server sizing techniques
Analyzing server bottlenecks
Scalability Recommendations
Emerging technology’s impact on user density
Citrix eLabs
4. Single Server Scalability (SSS) How many users can a Citrix Presentation Server support?
Power of the server, the environment in which the server is installed, applications running on the server, way users employ those applications
The answer to this question can be found by:
Creating a test environment that mimics the production
Replicating user actions performed on the servers
Measuring to see when and where the bottleneck occurs How many users can a computer running Presentation Server support?
This is a common question among Citrix administrators. The answer is complex and includes many variables such as the power of the server, the environment in which the server is installed, the applications running on the server and the way users employ those applications. The answer to this question can be found by creating a test environment that mimics the production, replicating user actions performed on the servers while measuring to see when and where the bottleneck occurs.
As the number of servers in a farm increases, so does the cost of maintaining the environment. It is important to optimize the configuration of the computers running Presentation Server to support more users on each server, thus reducing total cost of ownership.
How many users can a computer running Presentation Server support?
This is a common question among Citrix administrators. The answer is complex and includes many variables such as the power of the server, the environment in which the server is installed, the applications running on the server and the way users employ those applications. The answer to this question can be found by creating a test environment that mimics the production, replicating user actions performed on the servers while measuring to see when and where the bottleneck occurs.
As the number of servers in a farm increases, so does the cost of maintaining the environment. It is important to optimize the configuration of the computers running Presentation Server to support more users on each server, thus reducing total cost of ownership.
5. Developing Test Environment Configuring the Server
Business applications
Applications to be tested
Anti-virus software
Remote deployment software
Agents (SNMP, SMS) Configuring the Client
Client printers
Client drives
Multimedia / Audio
Session color depth and resolution
Security Settings On the server we want to determine the applications that will be installed.
Will this server be dedicated to a single application or will there be multiple
Make sure that all support software is install before the test. This includes Anti-virus, MetaFrame Password Manager, Remote Deployment Software, Server Agents (SNMP, SMS, Tivoli), plus any Service packs, Hot-fixes, Critical updates, RM.
Installing software after you perform the test can skew the results. Different applications, tests and environments will behave differently, thus it is important to ensure that the test environment matches the setup used during deployment
On the server we want to determine the applications that will be installed.
Will this server be dedicated to a single application or will there be multiple
Make sure that all support software is install before the test. This includes Anti-virus, MetaFrame Password Manager, Remote Deployment Software, Server Agents (SNMP, SMS, Tivoli), plus any Service packs, Hot-fixes, Critical updates, RM.
Installing software after you perform the test can skew the results. Different applications, tests and environments will behave differently, thus it is important to ensure that the test environment matches the setup used during deployment
6. Create a User Script Mimic typical users
Typing speed
Include printing
Document size
Frequency
Save to both client and server drives
File server
Play audio
Low quality
High quality
Log in / log out You can make your scripts simple or as complicated as you want. An example of a simple script would be to open Microsoft Word type a document, save the document and or print it. A more advanced script can open and close multiple applications and switch between them.
Remember it is important to create these scripts so that they will mimic your typical or common user. With a little research or interviewing of your users you should be able to document the majority of actions performed daily in an application. Be sure to include data entry, saving information, pauses, printing and/or querying information.
When writing these scripts design them so they will run in a continuous loop once launched.
Creating a script that runs too fast or slow will cause the results to be inaccurate when compared to the production environment.
You can make your scripts simple or as complicated as you want. An example of a simple script would be to open Microsoft Word type a document, save the document and or print it. A more advanced script can open and close multiple applications and switch between them.
Remember it is important to create these scripts so that they will mimic your typical or common user. With a little research or interviewing of your users you should be able to document the majority of actions performed daily in an application. Be sure to include data entry, saving information, pauses, printing and/or querying information.
When writing these scripts design them so they will run in a continuous loop once launched.
Creating a script that runs too fast or slow will cause the results to be inaccurate when compared to the production environment.
7. Run the Test Start scaling up users
Monitor the performance data over time
Processor - % Processor Time, System - Processor Queue Length
Memory - Available Kbytes, Memory - Pages Input/Sec,
Physical Disk - % Disk Time, Physical Disk - Current Disk Queue Length
Manually login a session to determine the user experience
Identify when a threshold has been reached
Record the number of users at the threshold
Save the data for later comparisons Next determine the ratio of users using these different applications. Will I have at any give time 60% of my users using Office and 40% using SAP. 50-50.
This is important because during the measuring phase you will want to maintain this ratio of users to applications on the system.
The test procedure will be:
Login users (20 for the first iteration) and launch the scripts. They begin to execute while your monitoring the performance of the server.
Users should be added in intervals of hours and not minutes, there is going to be a performance hit while the server gets acclimated to the users, this will eliminate extended spiking of resources due to logins, printer creation and user profile creation.
Keep adding users while monitoring, but reduce the number of users added each time when close to a threshold
Stagger the launch of the scripts a few seconds so all user do not launch the same application at the same time
Save these baseline results so you can compare against any changes that are made to the environment or scripts in the futureNext determine the ratio of users using these different applications. Will I have at any give time 60% of my users using Office and 40% using SAP. 50-50.
This is important because during the measuring phase you will want to maintain this ratio of users to applications on the system.
The test procedure will be:
Login users (20 for the first iteration) and launch the scripts. They begin to execute while your monitoring the performance of the server.
Users should be added in intervals of hours and not minutes, there is going to be a performance hit while the server gets acclimated to the users, this will eliminate extended spiking of resources due to logins, printer creation and user profile creation.
Keep adding users while monitoring, but reduce the number of users added each time when close to a threshold
Stagger the launch of the scripts a few seconds so all user do not launch the same application at the same time
Save these baseline results so you can compare against any changes that are made to the environment or scripts in the future
8. Monitoring Existing Environments As an alternative to artificially scripting users, for existing environments analyze real-life usage in a pilot environment
Use Resource Manager’s summary database to monitor servers in the farm
Set metrics
Set alerts for the desired thresholds
Analyze historical data to see if trends are as expected If you already have a farm, you can use summary DB to determine how many users you have on a system. In the RM node of the Presentation Server Console you can add the appropriate metrics/counters to the servers. Set the desired thresholds and configure the alerts for when the thresholds are reached.
Using the results during the test run we can also use RM to validate these numbers when we move the servers into the production farm
While we are monitoring the farm if you detect a difference between the number of users on server in production than the testing environment. Adjust scripts to be even more accurate by speeding them up or slowing them down.If you already have a farm, you can use summary DB to determine how many users you have on a system. In the RM node of the Presentation Server Console you can add the appropriate metrics/counters to the servers. Set the desired thresholds and configure the alerts for when the thresholds are reached.
Using the results during the test run we can also use RM to validate these numbers when we move the servers into the production farm
While we are monitoring the farm if you detect a difference between the number of users on server in production than the testing environment. Adjust scripts to be even more accurate by speeding them up or slowing them down.
9. System Bottlenecks How do I determine which subsystem is bottlenecked?
CPU
Memory
Network
Disk
How do I alleviate the bottleneck? My users are complaining of slow response times when working within their applications.
Where do I start?
What tools are available?My users are complaining of slow response times when working within their applications.
Where do I start?
What tools are available?
10. CPU Bottleneck Counters used to identify CPU bottlenecks
Processor - % Processor Time
System - Processor Queue Length
Symptoms of a CPU bottleneck
Application response time is slow
Applications launch time is slow
Applications freeze for short periods of time
Login and logoff times are slow % Processor time counter can be misleading
Users can experience delays even though processor time is below the expected threshold
It is important to look at both of these counters to determine the health of the CPU subsystem
% Processor time counter can be misleading
Users can experience delays even though processor time is below the expected threshold
It is important to look at both of these counters to determine the health of the CPU subsystem
11. CPU Bottleneck A closer look at a CPU bottleneck A terminal server is essentially a time sharing system, there is never a single process using all of the CPU resources all of the time. A terminal server can have hundreds of processes all fighting for CPU time, this in itself can make determining a CPU bottleneck a little difficult.
High CPU utilization does not always mean a bottleneck now that MalooCPU does fair share you can push it much higher, as its ultimately about end–user experience.
Talk about identifying a single process is consuming all of the CPU time
A terminal server is essentially a time sharing system, there is never a single process using all of the CPU resources all of the time. A terminal server can have hundreds of processes all fighting for CPU time, this in itself can make determining a CPU bottleneck a little difficult.
High CPU utilization does not always mean a bottleneck now that MalooCPU does fair share you can push it much higher, as its ultimately about end–user experience.
Talk about identifying a single process is consuming all of the CPU time
12. Alleviating a CPU Bottleneck Faster processors
Hyper-Threading
Adding more processors
64-bit technology enables greater scaling up capabilities
Dual-Core processors
CPU optimization feature in Citrix Presentation Server 4.0
13. 32-Bit Windows Memory Architecture 4 GB (2^32) address space
2 GB kernel mode virtual address space
Shared across processes
2 GB user mode virtual address space
Each process has it’s own
Kernel address space includes
System Page Table Entry (PTE) area
KM thread stacks
Paged Pool
page tables, kernel objects
System Cache
file cache, registry 32-bit systems
32-bit= 2^32 bytes of memory= 4GB
4GB addressable memory is divided into:
2GB for User mode processes
Every user mode process has its own 2GB of virtual memory
2GB for Kernel mode processes is shared between:
System PTE, Page Pool, Non-Paged Pool, System Cache
All processes and users must share the same kernel memory
Adding more RAM does not increase the 2GB limit
Session count limitations
Knowledge Worker (KW) Scenario – maximum 270 sessions
Paged Pool/System PTEs exhaustion
Highest consumption – thread kernel stacks
Large amounts of physical memory use significant Kernel VA for system data structures
Performance implications
Cache performance degrade – Due to high paged pool usage
Special hardware configurations further reduces amount of KM VA available
Roughly 2 bytes of VA is lost for each byte of hot-swap memory
32-bit systems
32-bit= 2^32 bytes of memory= 4GB
4GB addressable memory is divided into:
2GB for User mode processes
Every user mode process has its own 2GB of virtual memory
2GB for Kernel mode processes is shared between:
System PTE, Page Pool, Non-Paged Pool, System Cache
All processes and users must share the same kernel memory
Adding more RAM does not increase the 2GB limit
Session count limitations
Knowledge Worker (KW) Scenario – maximum 270 sessions
Paged Pool/System PTEs exhaustion
Highest consumption – thread kernel stacks
Large amounts of physical memory use significant Kernel VA for system data structures
Performance implications
Cache performance degrade – Due to high paged pool usage
Special hardware configurations further reduces amount of KM VA available
Roughly 2 bytes of VA is lost for each byte of hot-swap memory
14. Application Memory Bottleneck Counters used to identify bottlenecks in the application memory space
Memory - Available KBytes
Process - Working Set / Total
Memory - Pages Input/sec
Memory - Pages Output/sec
Symptoms of an application memory bottleneck
Users experience application delays even though processor time is below the expected threshold
High disk utilization caused by paging
Applications fail to launch
15. Application Memory Bottleneck A closer look at an application memory bottleneck When a system has abundant physical RAM, the working set will initially grow at a high rate, and pages will be left in the working set of a process even if they are not in use.
Eventually, when the total working set tends to exhaust the amount of physical memory, the operating system will be forced to trim the unused portions of working set until enough pages are made available to free up the memory pressure.
This trimming of unused portions of the working sets will occur when the applications collectively need more physical memory than is available, a situation that requires the system to constantly page to maintain all the processes’ working sets.
When a system has abundant physical RAM, the working set will initially grow at a high rate, and pages will be left in the working set of a process even if they are not in use.
Eventually, when the total working set tends to exhaust the amount of physical memory, the operating system will be forced to trim the unused portions of working set until enough pages are made available to free up the memory pressure.
This trimming of unused portions of the working sets will occur when the applications collectively need more physical memory than is available, a situation that requires the system to constantly page to maintain all the processes’ working sets.
16. Alleviating Application Memory Bottlenecks Stop unnecessary processes from running in every session
Disable unneeded services
Increase the amount of system RAM
boot.ini (/PAE)
Memory optimization feature in Citrix Presentation Server 4.0 The /PAE switch in the boot.ini can be enabled to increase the physical memory on the server, this switch allows Windows Server 2003 to take advantage of the Physical Address Extensions (PAE) of x86 processors. Using the /PAE switch can be beneficial in situations where your servers are not kernel memory bound and the applications on your servers use large amounts of memory. The memory enabled with the /PAE switch will be allocated to the user space while the kernel will still be limited to 2GB, the total virtual memory address space does not change. There will also be a small kernel memory cost because the operating system needs to track this additional memory. Note, that the use of /PAE requires programmers to use the Address Windows Extensions (AWE) application programming interface (API) to take advantage of the memory.
The /PAE switch in the boot.ini can be enabled to increase the physical memory on the server, this switch allows Windows Server 2003 to take advantage of the Physical Address Extensions (PAE) of x86 processors. Using the /PAE switch can be beneficial in situations where your servers are not kernel memory bound and the applications on your servers use large amounts of memory. The memory enabled with the /PAE switch will be allocated to the user space while the kernel will still be limited to 2GB, the total virtual memory address space does not change. There will also be a small kernel memory cost because the operating system needs to track this additional memory. Note, that the use of /PAE requires programmers to use the Address Windows Extensions (AWE) application programming interface (API) to take advantage of the memory.
17. Virtual Memory Optimization Memory usage reduced by 15% when enabled
More users in an application memory constrained environment
Faster application load times
18. Virtual Memory Optimization Reduced page file usage
Less paging equals better performance
Combats Windows copy-on-write
19. Kernel Memory Bottleneck Counters used to identify bottlenecks in the kernel memory space
Pageable
Memory - Paged Pool Bytes
Cache - Cache Read Hit %
Non-Pageable
Memory - Non-paged Pool Bytes
Memory - Free System Page Table Entries
Symptoms of a kernel memory bottleneck
I/O response times increase
Applications fail to launch
Users are unable to login Kernel memory pools are sized when the server boots
The size of the pools depend on the type of server, terminal server, workstation
High Paged Pool usage triggers reclaim process for System Cache data structures which in turn degrades cache performance
Kernel memory pools are sized when the server boots
The size of the pools depend on the type of server, terminal server, workstation
High Paged Pool usage triggers reclaim process for System Cache data structures which in turn degrades cache performance
20. Kernel Memory Bottleneck
21. Kernel Memory Bottleneck
22. Alleviating Kernel Memory Bottlenecks Use the registry to change the size of the pools
HKLM\System\CurrentControlSet\Control\SessionManager\MemoryManagement\SystemPages
HKLM\System\CurrentControlSet\Control\SessionManager\MemoryManagement\PagedPoolSize
Windows® Kernel Tuning Assistant
http://www.microsoft.com/windows2000/techinfo/administration/terminal/loadscripts.asp
Windows Server™ 2003 include kernel memory enhancements
Windows Server 2003 x64 Edition
23. Troubleshooting SSS Bottlenecks
24. Troubleshooting SSS Bottlenecks
25. Troubleshooting SSS Bottlenecks
26. Troubleshooting SSS Bottlenecks
27. What Is Going On?!? System analysis
CPU was at 70% utilization and the PQL was averaging 15
Disk was at 50% utilization
Available Memory dropped to zero and the operating system began to reclaim unused portions of the working set
Pages Input/Output per second increased dramatically
Large spike in Page File usage
Based on the data the system encountered an application memory bottleneck
By only looking at a piece of the data and not the entire picture we increase the risk of investing time and money while not fixing the problem 256-512 MB of memory should be allocated to the operating system
Application requirements
The goal is to have enough RAM to reach the threshold at the same time as the other subsystems
If your not using raid, create the page file on a separate physical disk from the system partition.
Create the page file so it is continuous and not fragmented.
As physical ram is utilized the server begins to use the system page file. As more physical ram is used, page file activity increases, causing the disk subsystem to become overloaded.
256-512 MB of memory should be allocated to the operating system
Application requirements
The goal is to have enough RAM to reach the threshold at the same time as the other subsystems
If your not using raid, create the page file on a separate physical disk from the system partition.
Create the page file so it is continuous and not fragmented.
As physical ram is utilized the server begins to use the system page file. As more physical ram is used, page file activity increases, causing the disk subsystem to become overloaded.
28. Other Tuning Recommendations Page File Optimization
1.5 to 2.5 x physical memory (initial and maximum page file settings should be equal)
Place page file on a dedicated partition on a separate disk
Disk Optimization
RAID cache controllers tuned to 50% read – 50% write
Lessens impact of disk intensive processes (loading large profiles)
RAM drives
Eliminates I/O bottlenecks
Network Optimization
NIC teaming provides high bandwidth to resource servers
Offload network overhead from the processor to the NIC with TOE capable network cards 256-512 MB of memory should be allocated to the operating system
Application requirements
The goal is to have enough RAM to reach the threshold at the same time as the other subsystems
If your not using raid, create the page file on a separate physical disk from the system partition.
Create the page file so it is continuous and not fragmented.
As physical ram is utilized the server begins to use the system page file. As more physical ram is used, page file activity increases, causing the disk subsystem to become overloaded.
256-512 MB of memory should be allocated to the operating system
Application requirements
The goal is to have enough RAM to reach the threshold at the same time as the other subsystems
If your not using raid, create the page file on a separate physical disk from the system partition.
Create the page file so it is continuous and not fragmented.
As physical ram is utilized the server begins to use the system page file. As more physical ram is used, page file activity increases, causing the disk subsystem to become overloaded.
29. For 32-bit environments, dual-processor servers give the best performance
Diminishing returns beyond two CPUs
System generally runs out of kernel memory
Non-linear scalability Scaling Servers Up Scalability tests conducted on a quad processor system show that capacity/performance does not scale linear as we increase the number of processors.
When configured with a single processor the system was able to achieve 70 concurrent users before a processor bottleneck was achieved. With the same test when 2 processors were enable the system scaled to 126 users an 80% increase over the single processor system. With all 4 processors enable the system scaled to 160 users a 27% increase over the dual processor system.
A reason for this non-linear scalability is a combination other bottlenecks such as the speed of the system bus, server disk subsystems, and operating system limitations.
Based on these results a dual processor server will give the best single performance
Scalability tests conducted on a quad processor system show that capacity/performance does not scale linear as we increase the number of processors.
When configured with a single processor the system was able to achieve 70 concurrent users before a processor bottleneck was achieved. With the same test when 2 processors were enable the system scaled to 126 users an 80% increase over the single processor system. With all 4 processors enable the system scaled to 160 users a 27% increase over the dual processor system.
A reason for this non-linear scalability is a combination other bottlenecks such as the speed of the system bus, server disk subsystems, and operating system limitations.
Based on these results a dual processor server will give the best single performance
30. What is x64 Bit Architecture? 64-bit extensions to the x86 instruction set
Lets customers take advantage of their investment in 32-bit Windows applications, while also powering the latest 64-bit technology
Can install existing 32-bit OS’s or 64-bit OS Common server workloads straining the limits of 32-bit x86 architecture
Customers do not want to abandon the investment made in 32-bit x86
Windows Server 2003 x64 Editions provide a single platform that can run 64-bit applications and 32-bit applications at high performance
Single binary version of Windows for x64 supports both AMD’s AMD64 and Intel’s EM64T architectures
Common server workloads straining the limits of 32-bit x86 architecture
Customers do not want to abandon the investment made in 32-bit x86
Windows Server 2003 x64 Editions provide a single platform that can run 64-bit applications and 32-bit applications at high performance
Single binary version of Windows for x64 supports both AMD’s AMD64 and Intel’s EM64T architectures
31. 64-Bit Technology 64-bit Processors
Equal or better performance when compared to 32-bit processors at the same clock speed in a pure 32-bit environment
No need to upgrade hardware when moving to 64-bit Windows Server 2003
64-bit operating system solves the following
Increased scalability due to larger memory space
Smoother transition to 64-bit apps when available
64-bit operating systems do not apply to the following
Cases where scalability is limited by the CPU – Disk – Network
16-bit applications will not run Common server workloads straining the limits of 32-bit x86 architecture
Customers do not want to abandon the investment made in 32-bit x86
Windows Server 2003 x64 Editions provide a single platform that can run 64-bit applications and 32-bit applications at high performance
Single binary version of Windows for x64 supports both AMD’s AMD64 and Intel’s EM64T architectures
IT Professionals increasingly rely upon industry-standard servers to run the majority of their business.
90% of all new server shipments are based on the industry-standard, 32-bit x86 architecture.
As computing tasks have increased in complexity and volume, many common server workloads are straining the limits of 32-bit x86 architecture.
IT Professionals are then required to deploy additional servers to meet their Service Level Agreements, increasing the costs of server administration
At the same time, customers do not want to abandon the investment they’ve made in 32-bit x86 technology
Broad investments include hardware, applications, administration skills, and development skills
Windows Server 2003 x64 Editions gives these customers a single platform that can run new 64-bit applications, while continuing to run existing 32-bit applications at high performance
Same familiar platform with expanded capabilities
Common server workloads straining the limits of 32-bit x86 architecture
Customers do not want to abandon the investment made in 32-bit x86
Windows Server 2003 x64 Editions provide a single platform that can run 64-bit applications and 32-bit applications at high performance
Single binary version of Windows for x64 supports both AMD’s AMD64 and Intel’s EM64T architectures
IT Professionals increasingly rely upon industry-standard servers to run the majority of their business.
90% of all new server shipments are based on the industry-standard, 32-bit x86 architecture.
As computing tasks have increased in complexity and volume, many common server workloads are straining the limits of 32-bit x86 architecture.
IT Professionals are then required to deploy additional servers to meet their Service Level Agreements, increasing the costs of server administration
At the same time, customers do not want to abandon the investment they’ve made in 32-bit x86 technology
Broad investments include hardware, applications, administration skills, and development skills
Windows Server 2003 x64 Editions gives these customers a single platform that can run new 64-bit applications, while continuing to run existing 32-bit applications at high performance
Same familiar platform with expanded capabilities
32. 32-Bit Windows Constraints 64-bit Windows eliminates kernel memory limitations
No reason to be memory bound in CPS environments 32-bit systems
32-bit= 2^32 bytes of memory= 4GB
4GB addressable memory is divided into:
2GB for User mode processes
Every user mode process has its own 2GB of virtual memory
2GB for Kernel mode processes is shared between:
System PTE, Page Pool, Non-Paged Pool, System Cache
All processes and users must share the same kernel memory
Adding more RAM does not increase the 2GB limiT
Session count limitations
Knowledge Worker (KW) Scenario – maximum 270 sessions
Paged Pool/System PTEs exhaustion
Highest consumption – thread kernel stacks
Large amounts of physical memory use significant Kernel VA for system data structures
Performance implications
Cache performance degrade – Due to high paged pool usage
Special hardware configurations further reduces amount of KM VA available
Roughly 2 bytes of VA is lost for each byte of hot-swap memory
32-bit systems
32-bit= 2^32 bytes of memory= 4GB
4GB addressable memory is divided into:
2GB for User mode processes
Every user mode process has its own 2GB of virtual memory
2GB for Kernel mode processes is shared between:
System PTE, Page Pool, Non-Paged Pool, System Cache
All processes and users must share the same kernel memory
Adding more RAM does not increase the 2GB limiT
Session count limitations
Knowledge Worker (KW) Scenario – maximum 270 sessions
Paged Pool/System PTEs exhaustion
Highest consumption – thread kernel stacks
Large amounts of physical memory use significant Kernel VA for system data structures
Performance implications
Cache performance degrade – Due to high paged pool usage
Special hardware configurations further reduces amount of KM VA available
Roughly 2 bytes of VA is lost for each byte of hot-swap memory
33. 64-Bit – Leveraging Quad Servers
Leverages the full power of quad systems
60% increase in users per server
When using quad versus dual processor servers Ideally, doubling the processing power of a server would result in doubling the number of users the server could support. However, in 32-bit environments with the heavy user scripts, when processing power is doubled from two processors to four processors, the scalability bottleneck is transferred from the CPU to kernel memory. The heavy user test shows 18% more users can be supported on a quad processor server than a dual processors server with CPS 4.0 before running out of kernel memory. With 64-bit Windows, the CPU bottleneck seen in a dual processor server is also seen in a four processor server. The heavy user test shows 60% more users can be supported on a quad processor server than a dual processors server with CPS 4.0 x64 Edition before exhausting system resources.
On the Citrix Presentation Server 4.0 the performance increase when up-scaling from one to two processors was 112%. Scaling from two to four processors led to a gain of 18%. Citrix Presentation Server x64 Edition showed a performance increase when up-scaling from one to two processors of 116%, and scaling from two to four processors led to a gain of 60%.Ideally, doubling the processing power of a server would result in doubling the number of users the server could support. However, in 32-bit environments with the heavy user scripts, when processing power is doubled from two processors to four processors, the scalability bottleneck is transferred from the CPU to kernel memory. The heavy user test shows 18% more users can be supported on a quad processor server than a dual processors server with CPS 4.0 before running out of kernel memory. With 64-bit Windows, the CPU bottleneck seen in a dual processor server is also seen in a four processor server. The heavy user test shows 60% more users can be supported on a quad processor server than a dual processors server with CPS 4.0 x64 Edition before exhausting system resources.
On the Citrix Presentation Server 4.0 the performance increase when up-scaling from one to two processors was 112%. Scaling from two to four processors led to a gain of 18%. Citrix Presentation Server x64 Edition showed a performance increase when up-scaling from one to two processors of 116%, and scaling from two to four processors led to a gain of 60%.
34. 64-Bit Memory Usage Address pointers of 64-bit systems are twice as wide
Need to be prepared when upgrading to 64-bit
35. Multi-Core Processors Scaling up was traditionally an expensive initial investment
Non-linear price difference between dual processor servers and quad processor servers
Multi-core processing technology bridges the gap
Multi-core processors combine two physical processors and two L2 caches on the same die
Multi-core processors are essentially a multi-processor system in a smaller package
36. Multi-Core Processors Equal or better performance over traditional multi-processor servers!
37. Single Server Scalability Conclusion Capacity Planning is unique to each environment
Retest and re-evaluate whenever hardware or software changes
Analyze and know your bottlenecks
Things aren’t always what they seem!
Windows Server x64 and Presentation Server 4.0 establish the foundation for supporting 64-bit
Servers support both 32-bit and 64-bit OS
Provide a smooth migration path to 64-bit technology
Extends return on investment in 32-bit applications
By following these guidelines you will
Increase user capacity on Presentation Servers
Sustain a better, more stable user environment
Lower TCO
38. Thank You