When selecting hardware for your Exchange servers, there are many things that you must consider. Two of the most critical resources are processor and memory.

This blog provides rough guidelines for processor/memory configurations that provide good performance for Exchange 2003 while also providing a strong platform for Exchange Server 12. Recommendations will also be made on how server hardware deployed for Exchange 2003 roles can be re-utilized for Exchange Server 12 on a per server role basis (e.g. Mailbox, Client Access Server (CAS) etc).With this in mind, I have tried to make safe/highly confident predictions concerning what processor/memory configurations work well for E12 server roles to help administrators maintain current Exchange 2003 environments with an eye toward the future.

***This information is provided with the caveat that Exchange 12 is still under development and processor/memory metrics may change.This information will be updated as "Best Practices" are defined for Exchange 12.***

The primary hardware difference between Exchange 2003 and Exchange 12 is the move from a 32-bit platform (Exchange 2003) to a 64-bit platform (Exchange 12).Exchange 12 will only be supported in production environments when it is running on an x64 edition of Windows Server 2003.

The change from a 32-bit platform to a 64-bit platform requires a new approach to choosing server hardware for Exchange; especially processor and memory:

What processor types should I consider to ensure my server hardware will work with both Exchange 2003 (32-bit) and Exchange 12 (64-bit)?

We recommend that you choose a processor that will work with both 32-bit and x64 versions of Windows 2003. The following server processors support both 32-bit and x64 versions of Windows 2003, thereby supporting Exchange 2003 deployments today, and Exchange 12 deployments tomorrow:

Each of these vendors also ship x64-capable desktop processors which can also run x64 versions of Windows 2003 (e.g. AMD Athlon64 and Intel Pentium D with EM64T) but for the sake of simplicity, this article will concentrate on processors designed for server deployments.

It's important to note that the Intel Itanium (IA64) processor will not work with Windows 2003 x64 Editions, and thus it will not work for Exchange 12 deployments. Exchange 12 is designed to run only on x64 capable processors such as those listed above; Exchange 12 will not run on Itanium based systems.

Regardless of which server processor you select, it is necessary to have the server product pass the Designed for Windows test suite to ensure Microsoft support.Servers listed on the Windows Server Catalog meet this criteria.If your server is not listed, check with your vendor to see if either the "Designed for Windows" logo testing is in progress or the server has passed the testing and is pending a website update.

The TechnetX64 Newsgroup is a good place to get more information about moving from 32-bit Windows to 64-bit Windows.

Should I be considering multi-core processors for my Exchange 2003/E12 servers?

The short answer is yes. Extensive testing on dual-core processors has shown that Exchange benefits from dual-core processor technology.The performance benefit for Exchange from dual-core technology depends upon the specific processor utilized.The findings from Exchange 2003 dual-core testing have been summarized in Microsoft Knowledge Base article 827281, CPU and memory scalability for Exchange Server 2003 and for Exchange 2000 Server.Also, the performance benefit of specific dual-core implementations can be seen by comparing the MMB3 results of a 4-processor, single-core based server to a 2-processor, dual-core based server. These results have been published at the Performance Benchmarks for Computers Running Exchange Server 2003 Web site.

Today, dual-core processors are an attractive option for Exchange 2003 and Exchange 12 servers based on price and performance.Please ask your server vendor about dual-core benefits for Exchange, specific to a given hardware architecture.

What do I have to know to ensure my x64 capable Exchange 2003 server can be upgraded with more memory when I deploy Exchange 12?

Exchange 12 enables much better memory utilization than Exchange 2003 due to its 64-bit architecture. Because of the virtual address space limitations of a 32-bit platform, Exchange 2003 is limited to using 4 GB or less of physical memory. In contrast, Exchange 12 running on Windows 2003 x64 Editions will efficiently utilize upwards of 16 GB of memory and beyond (Mailbox role). This change needs to be factored in when putting together server hardware for Exchange 2003 that can be migrated to Exchange 12 server roles. The following factors should be considered:

Server Maximum Memory Configuration - Different server architectures have different memory limits. We recommend that you check the following technical specifications of the server to determine the criteria that affect the maximum memory configuration to ensure that memory upgrades from Exchange 2003 to Exchange 12 can be accommodated economically:

·Memory Speed - Some server architectures require slower memory to scale up the memory to ten's of gigabytes in a given server (e.g., maximum server memory is limited to 16GB with PC3200 or 32GB using PC2700).You should check with the manufacturer to make sure that the memory configuration target for both Exchange 2003 and Exchange 12 are compatible in terms of speed.

·Memory Module Size - What is the largest memory module size the server will support? Generally, the larger the memory module, the more expensive it is; 2x1GB DDR SDRAM memory modules generally cost much less than 1x2GB DDR SDRAM memory modules. When planning for an Exchange 2003 server, make sure the maximum memory module size allows you to meet your target memory requirements for Exchange 12. It may make sense to spend more money and purchase denser memory modules for an Exchange 2003 deployment to ensure that the memory requirements for Exchange 12 can be met down the road.

·Total Number of Memory Slots - How many memory modules will a given server support?The total number of slots multiplied by the maximum memory module size will provide the maximum memory configuration for the server. Also, keep in mind that memory modules must sometimes be installed in pairs.

Memory upgrade path from Exchange 2003 to Exchange 12 - Once you understand the memory requirements of a given server you can design the optimal memory configurations for Exchange 2003 while simultaneously designing an upgrade path to Exchange 12.

Example - In this example, let's say you wanted to purchase a server for Exchange 2003 (Backend/Mailbox role). The Exchange 2003 best practice for maximum memory is 4GB, but you want to ensure you will have the capability to go to 16GB when you deploy Exchange 12. You analyze the manufacturer technical specs and find the following:

Total Number of Memory Slots:Specifications say there are 8 total memory slots (8*4GB = 32GB Max memory configuration).Specification also states memory must be added in pairs.

With this information it is determined that 2GB PC2700 or 2GB PC3200 memory modules will provide a good memory configuration for Exchange 2003 (2x2GB). Moreover, the server can be upgraded to 16 GB (8x2GB) to significantly reduce the I/O for an Exchange 12 Mailbox Server down the road. If 1GB memory modules were chosen for the Exchange 2003 configuration, the server could not be upgraded to 16GB without having to throw out the 1GB memory modules and replace them with 2GB memory modules.One caveat with this planning method is that some servers experience a performance improvement when more memory slots are filled, while others experience a reduction in performance.Check with your hardware vendor to understand this effect for a given server architecture.

How do I apply the processor and memory configuration factors to specific Exchange 2003/Exchange 12 server roles?

The following chart can be used to assist in purchasing server hardware destined to be used for both Exchange 2003 and Exchange 12 server roles.The goal of this chart is to provide an upper bound of viable processor/memory configurations for Exchange Server 12.This is not a statement of "Best Practice" but a simple guide for purchasing server hardware for Exchange Server 2003 that can be utilized for Exchange Server 12.The "sweet spot" in terms of hardware price/performance for each Exchange Server 12 server role is still being ascertained.

Recommended Maximum Processor and Memory Configuration for Exchange

Exchange 2003

Exchange 12

Role

Max Processor Config

Max Memory Config

Role

Max Processor Config

Max Memory Config

Gateway/ Bridghead

2xDual-core

2GB

Edge Transport/ Hub Transport

2xDual-core

8GB

Front End Server (FE)

2xDual-core

2GB

Client Access Server/ Unified Messaging Server

2xDual-core

8GB

Backend Mailbox Server (BE)/ Public Folder Server

4xDual-core

4GB

Mailbox Server

4xDual-core

32GB

ExampleIn choosing a server platform for an Exchange Server 2003 Mailbox/BE that is destined to be re-utilized as an Exchange Server 12 Mailbox server, then it would make sense to choose a server that has a maximum physical memory capacity of 32GB for a scaled up deployment (~4000 mailboxes/server).It would be unfortunate to choose a server that had a maximum physical memory capacity of 8GB for this role and then not be able to effectively reduce I/O with 16GB or 32GB of memory when transitioned to Exchange Server 12 service.The maximum configurations outlined above for Exchange 12 are not "optimal" configurations, but the current maximums the Exchange Product Group is developing against.

Summary

I hope I have offered some insight on how to choose server hardware for Exchange 2003 that can be utilized for Exchange 12 deployments tomorrow.With effective planning and an understanding of the basic processor and memory requirements of both versions, the investments made today in current Exchange 2003 infrastructures can continue to be leveraged with Exchange 12.

Great Article. I would like to see some idea of what you think is needed by those medium sized companies who are too big for SBS but not large enough to be able to afford to split off their exchange roles (i.e. the single server users) Right now I work for a company with ~100 Email users, with little to no growth expected in the forseeable future as far as email users are concerned. We have a Dell 2850 with dual 3.0GHz EM64T Xeons and 2 GBs of Ram all of which is more than sufficient for Exch2k3. I would think that it should be fine for Exchange 12 as well. What do you all think?

So if you have 2003 mailbox servers in production with 4GB of RAM, running 2500 a server (1500 concurrent), and your server has EM64T... would you need to add more RAM after moving to 64bit? I guess what I'm asking is: can/will more mailbox data be cached then in 2003 so that you would need to buy more RAM to support the current number of mailboxes?

This scenario is for an in-place upgrade of the Exchange server, but in my experience, most customers use the safer road of adding a server and move mailboxes to this new server...

So my Question is, if you buy these hardware today, install Windows 2003 32Bit with Exchange 2003, would you then not need to reinstall or upgrade (if possible) to a 64bit OS before putting Exchange 12 on it ( Production )...

I cannot see how you are suggesting quad, dual-core processors and 8 GB of RAM and not even mentioning the data storage architecture. Are you assuming everyone has a dual HBA connected SAN dedicated to Exchange?

I would like to see a followup blog entry with realistic storage suggestions. Especially since I have heard that recommended quotas for E12 have gone from 250 MB mailboxes to 1-2 GB.

You are correct, installing a 32 bit OS today will allow you to use the hardware until you are ready for 64 bit and Exchange 12. However, there is no in-place upgrade path from 32 bit to 64 bit Windows (just think of driver nightmares this could cause) - so you will essentially have to "swing" the 32 bit Exchange by moving mailboxes somewhere else for example, and then reinstalling the OS on the machine and installing Exchange 12.

We will definitely have guidance around this!

Brian:

You are reading our minds :) Indeed, such blog post is in works and it will not be too long now before you see it!

Don't make the mistake I did. Exchange 2003 will run on SATA drives, but not well. I setup a SATA RAID5 array and couldn't figure out why the thing was so slow.

Exchange 2003 needs SCSI drives, u320 and at least 10k, and nothing less or prepare for slowdowns.

Also, in a RAID5, you'll need 5 disks to get the same performance as 2 disks in a mirror. From the research I did, the fastest solution is a RAID 10 solution. Do a search on Google for Exchange 2003 and IOPS for more details (IOPS = I/O Per Second).

ExchangeGuy, you will have to intall Windows 2003 x64 Edition to install E12. Your current Windows 2003 32-bit Edition will not support E12. You will have to move mailboxes off the server, flatten it, install Windows 2003 x64 Edition, install E12; then move the mailboxes back.

If you have a P4 system that supports 64 bit - that WILL run both x64 Windows and Exchange 12. Both Intel and AMD have tools that tell you what technologies your CPUs support, we mentioned them in the earlier related blog post:

One additional question that comes up related to server hardware is related to servers with more than 4 CPU sockets. My company uses servers with between 8 and 32 CPU sockets for MS SQL Server and has achieved a very good return on investment in these configurations.

Will Exchange 12 support Servers with 8 or more CPU sockets? Does your team test configurations like this or does the server vendor need to perform this type of testing?

Perry, Exchange is being developed with the intention to optimize the 1-4 socket hardware configurations (E12 server roles placed on separate servers). 8+ socket platforms will most likely be supported (if listed on WHCL), but the product is not being optimized specifically for these architectures. Generally, our server partners test/validate Exchange on 8+ socket configurations where it makes business sense to do so.

I disagree with this approach. Technology changes so quickly, that by the time Exchang 2007 comes out... your "upgrade" server will be out of date and it will probably be well suited for a paper weight. Think about it, would you want to buy last year's technology or go with something on the cutting edge? Take the 32bit vs 64 bit cpu's...64 bit cpu really have just came out this year ( meaning we have motherboards and software that use the full potential of the cpu ) are you going to stick with your 32 bit server or go with a cpu that is twice the speed? What will you do when the 16 core cpu comes out in 2007?

I think everyone should wait. Use what you got now and upgrade when and if the software comes out. Don't get caught in the hype.

I think another often missed key performance point is intigration with anti-smap and anti-virus activity on the same server. With many vendors offering Exchange intigrated solutions in adition to the mail gateways this can be a key performace factor in many deployments, but becomes critical in SBS and SMBS situations where server roll combining is afact of life.