One of the fundamental rules of working with Microsoft hardware and software has been that if you want to achieve optimal performance, just add more memory. Believe it or not, though, Exchange Server 2007 breaks this rule. There comes a point when adding additional memory to an Exchange 2007 mailbox server can hurt Exchange Server's performance.
Microsoft's memory recommendations
Microsoft recommends a bare minimum of 2 GB of memory for an Exchange 2007 mailbox server. It also recommends adding an additional 2 MB to 5 MB for each mailbox on the server, depending on how heavily mailboxes are used. This means that 2.5 GB of memory could support up to 100 mailboxes in a heavy-use scenario. Of course installing 4 GB, or even 8 GB of memory, can improve the Exchange server's performance.
As you know, Exchange Server 2007 requires a 64-bit operating system, running on a 64-bit server. Theoretically, 64-bit servers can support up to 16 exabytes (EB) of RAM. Currently, there are no servers that can accommodate even close to this amount of memory, but some servers can accommodate 64 GB of RAM and possibly even more.
Even though both the server hardware and Windows can comfortably support 64 GB or more of RAM, Microsoft recommends that you do not install more than 32 GB of RAM onto an Exchange mailbox server. The company gives three reasons for this limitation.
There's no arguing that cutting-edge servers cost more money than servers with mainstream hardware.
2. Non-transactional I/O
This reason for limiting mailbox servers to 32 GB of RAM doesn't have anything to do with poor performance, but rather with the server reaching a point where adding more memory does nothing to increase performance. This has to do with the difference between transactional and non-transactional I/O.
Transactional I/O consists of disk operations that are related to database transactions. For example, receiving email or creating a calendar entry can cause transactional I/O, because data is written to the transaction logs, which is ultimately written to the database.
Non-transactional I/O is I/O that is not related to database transactions. Online defragmentation and other maintenance tasks are examples of non-transactional I/O.
Earlier versions of Exchange Server typically required high-performance disk arrays because transactional I/O placed such a high burden on the disk subsystem. In Exchange Server 2007, though, most transactional I/O can be cached to RAM. This reduces Exchange's impact on the disk subsystem.
On the contrary, non-transactional I/O is not cached. This means that for any Exchange 2007 server, there will be a point where adding additional memory no longer reduces the disk subsystem's workload. Non-transactional I/O will always occur and transactional data will eventually have to be written to the disk subsystem.
3. Cold state operations
Adding excessive memory to an Exchange 2007 mailbox server is a waste of resources, but what about diminished server performance? Diminished server performance can occur when Exchange Server 2007 caches transactional I/O. When Exchange boots up, the cache is completely empty. As transactions occur, the cache gradually grows until it reaches its optimal size.
The more physical memory a server has, the longer it takes for the cache to reach its optimal size. Until the cache reaches this point, end users may experience slower-than-normal performance. If your mailbox server has more than 32 GB of memory, users may experience poor performance for an extended period of time after each reboot.
About the author: Brien M. Posey, MCSE, is a five-time recipient of Microsoft's Most Valuable Professional award for his work with Exchange Server, Windows Server, Internet Information Server (IIS), and File Systems and Storage. Brien has served as CIO for a nationwide chain of hospitals and was once responsible for the Department of Information Management at Fort Knox. As a freelance technical writer, Brien has written for Microsoft, TechTarget, CNET, ZDNet, MSD2D, Relevant Technologies and other technology companies. You can visit Brien's personal website at www.brienposey.com.
Do you have comments on this tip? Let us know.
Please let others know how useful this tip was via the rating scale below. Do you know a helpful Exchange Server, Microsoft Outlook or SharePoint tip, timesaver or workaround? Email the editors to talk about writing for SearchExchange.com.