Understanding Processor Configurations and Exchange Performance

Exchange 2010

Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2

Topic Last Modified: 2011-02-10

Three of the most critical factors to consider when selecting hardware for use by Microsoft Exchange Server 2010 are choice of processor, amount of memory, and selection of storage. This topic provides guidelines for processor configurations that provide good performance and a strong platform for Exchange.

For production environments, you must choose a processor that works with the 64-bit edition of the Windows Server operating system.

The release to manufacturing (RTM) version of Exchange 2010 is only supported in production environments when the x64 version of Exchange 2010 is installed on a computer with x64-compatible processors running 64-bit editions of Windows Server 2008 or Windows Server 2008 R2.

Exchange 2010 is designed to run only on x64-capable processors such as those listed previously, and it doesn't run on Itanium-based systems.

Regardless of which processor you choose, the server product must have the Designed for Windows logo to be supported. For more information, see Windows Logo Program: Overview. To ensure support, you must select a server listed in the Windows Server Catalog. If your server isn't listed, you should verify with the hardware vendor that testing is in progress.

Hyperthreading causes capacity planning and monitoring challenges, and as a result, the expected gain in CPU overhead is likely not justified. Hyperthreading should be disabled by default for production Exchange servers and only enabled if absolutely necessary as a temporary measure to increase CPU capacity until additional hardware can be obtained.

You can use the following table to assist you in purchasing server hardware for Exchange 2010. This table provides minimum requirements and recommended maximum configurations for Exchange 2010 based on the following definitions:

Minimum This is the minimum processor and memory configuration suitable for specific server roles. The minimum hardware requirements must be met to receive support from Microsoft Customer Service and Support.

Recommended maximum populated processor sockets This is the recommended maximum number of motherboard processor sockets that should be used for the roles listed, based on price and expected performance. The recommended maximum configuration is a guideline and may change over time based on price changes and technology advancements. It isn't a support criterion.

Example recommended maximum processor cores (assuming 6 core processors) This is the example maximum recommended processor and memory configuration for specific server roles. Maximum is defined as the upper bound of viable memory configurations based on price and performance. The recommended maximum configuration is a guideline. It isn't a support criterion, and it doesn't take into account the resource requirements of third-party applications that might access or be installed on the server. The recommended maximum configuration may change over time based on price changes and technology advancements.

Note:

The following guidance assumes an average concurrency profile. Concurrency is defined as the percentage of the total number of users on a server that are connected and using the server at a specific peak period of time. For a fully utilized server, concurrency is generally in the 75 to 80 percent range.

Some server virtualization platforms may not support the maximum number of processors identified in the preceding table. If you're planning to deploy Exchange server roles on a virtualization platform, check the documentation for that platform to determine the maximum number of supported virtual processors.

We recommend a configuration for the Hub Transport server role of 8 x processor cores in organizations where Hub Transport servers are deployed with several Mailbox servers and thousands of mailboxes. Servers with larger processor cores can be efficiently used when the Hub Transport server is configured to use antivirus and anti-spam tools. Processor utilization is based on several factors such as message rate, average message size, number of enabled transport agents, antivirus configuration, and third-party applications.

In Exchange 2010 architecture, most of the client-specific functions have been moved from the Mailbox server to the Client Access server. In Exchange 2010, messages are converted on the Client Access server when they're accessed by a non-MAPI client (for example, POP3 and IMAP4 clients). In addition, rendering for Microsoft Office Outlook Web App is performed on the Client Access server, as opposed to the Microsoft Exchange Information Store service in previous versions of Exchange.

We recommend a configuration for the Unified Messaging server role of 8 x processor cores. Multiple cores are used on the Unified Messaging server for several architectural functions such as .wav to Microsoft Windows Media Audio (WMA) conversions for voice mail messages. Servers with 2 x processor cores can be used for Unified Messaging servers in organizations where there aren't enough mailboxes or insufficient Unified Messaging server activity to warrant using 4 x processor core servers.

We recommend a configuration for the Mailbox server role based predominantly on mailbox count and user profile. A 4 x processor core server provides a good balance between price and performance, and it should be able to host several thousand mailboxes. Sizing for the Mailbox server requires an understanding of the average client user profile. This profile can be collected using transport performance counters that indicate overall message throughput within an Exchange system. You can also use third-party tools.

As a general guideline, a multiple role server should be sized to use half of the available processor cores for the Mailbox server role and the other half for the Client Access and Hub Transport server roles. The maximum recommended processor core configuration is listed at 24 x processor cores for the multiple server roles configuration to indirectly provide guidance on the maximum number of users that should be hosted on a multiple role server. Although this configuration can use more than 24 x processor cores, we don't recommend it. For more information, see Understanding Multiple Server Role Configurations in Capacity Planning. For more information about the combined Hub Transport and Client Access server roles, see Understanding Client Access and Hub Transport Combined Role Configurations in Capacity Planning.

The CPU overhead associated with running a guest operating system in a virtual machine was found in testing to range from 9 percent through 12 percent. For example, a guest operating system running on a virtual machine typically had available 88 percent to 91 percent of the CPU resources available to an equivalent operating system running on physical hardware. We recommend reducing the user capacity of Mailbox servers by 10 percent to account for hypervisor processor overhead.