For the most part having worried about Exchange I/O seems to be vanished with Exchange 2007 and powerful 64Bit environment. The main reason Exchange 2007 is able to take advantage of being able to perform most of the operations in memory and the 64Bit architecture is supporting the rest of it. The idea of breaking new roles, seems is the right decisions, and will improve the functionality of exchange server and its quality in my opinion. The new Exchange Transport service (SMTP transport stack), usage of ADAM on the Edge server, secure Edge transport sink one way from inside out to DMZ seems to be carefully planned and well hardened structure
- The 32Bit architecture is limited to use 4Gig memory (Exchange&2003). The 64Bit version windows is 2003 X64 provides 8TB. Based on the Exchange server role Microsoft has some recommendations and recommended maximum memory as below.
Database Cache Size in Exchange 2003
- Exchange 2003 runs on a 32-bit operating system, which limits the maximum size of the virtual address space to 4 gigabytes (GB). The operating system leaves only 2 GB of addressable RAM for a single application such as Exchange (or 3 GB when the /3GB switch is set in the Exchange boot.ini file). With such a limited amount of addressable RAM available, the size of the database cache must be carefully managed to allow Exchange to perform at its highest level.
Database Cache Size in Exchange 2007
- A large database cache greatly increases performance because disk input/output (I/O) is reduced and the ability to read information from memory is much faster than having to read information from a disk. With the 64-bit architecture in Exchange 2007, the maximum size of the database cache is no longer constrained by limits on the virtual address space. Instead, it is determined by the amount of available memory and by database I/O. For example, on a server that has 16 GB of physical RAM, ESE may increase the database cache to 8 GB if this amount is sufficient to meet its memory needs, and leave the remaining memory for system cache and other applications that are running on the server.