Heroix Monitor: Exchange Monitoring
In this issue: Exchange monitoring
   
 
In the News
   
     
Send someone a link to Heroix Monitor
   


Exchange Monitoring: The Information Store and Virtual Memory

Although Exchange will attempt to create an efficient balance between memory use by the OS and by user-mode processes, you may need to do some manual optimization if your server has 1GB or more of RAM installed. In our last issue, we talked about using the /3GB and /USERVA switches for this purpose. Use of these switches allows more page table entry kernel memory but still maintains 3 GB of memory for user-mode processes.

Of these processes, the Store.exe process is the only one that can grow large enough to cause problems (on production servers, it can commonly use 1.5 GB of virtual memory). The Store.exe process uses its own heap allocation mechanism and structures, which are called exchmem and reside in the Store's virtual memory space. On start-up, it creates several exchmem heaps. When these are fully utilized or have been unusably fragmented, the process creates more. Excessive heap creation results in the store's virtual memory being depleted or becoming fragmented.

Telltale Symptoms

When the Store.exe process runs low on virtual memory (or free memory becomes fragmented), it starts paging rapidly. Since disk operations are inherently slower than memory operations, server performance degrades. Here’s what to look for:

  1. If the largest block of free virtual memory is less than 32MB, that’s an early warning sign of fragmentation. A largest block size below 16 MB is a strong warning sign.

  2. You should have at least 3 blocks of free virtual memory that are 16MB or larger in size; otherwise, restart services to free up memory and reduce fragmentation.

  3. You should also have at least 50MB of free memory made up of large blocks (16MB or greater).

Symptoms of exchmem heap fragmentation include:

  1. Exchmem allocations cannot all be satisfied by available memory on the Exchange server.

  2. More than 3 exchmem heaps have been created by the Exchange store after startup.

  3. Exchmem heaps begin to show failed allocations due to insufficient available memory on the Exchange server.

What to Do

We recommend the following actions to reduce both virtual memory usage and exchmem fragmentation:

  1. Try to reduce the number of storage groups. This will reduce the amount of memory overhead for the Store.exe process.

  2. Reduce the workload on the server by dividing it according to role – for example, you could have dedicated servers for public folders, mailbox servers, etc.

Note: Four GB is the maximum amount of RAM that an Exchange server can utilize. Adding physical memory will not alleviate symptoms of virtual memory exhaustion. Microsoft warns that "virtual memory issues are more prevalent in a clustered Exchange 2003 configuration or a clustered Exchange 2000 configuration because these environments are typically used to scale Exchange to host multiple thousands of users together with multiple storage groups and multiple messaging databases." (see http://support.microsoft.com/?kbid=325044#ELADAAA)

As Always, Your Mileage May Vary

Messaging is one of the areas where a company's needs can scale up very quickly, and your Exchange configurations may become quite large and complex. Don't let them overwhelm you! The suggestions in this article will give you a starting point for understanding the root causes of memory-related performance issues, and allow you to anticipate and correct them before they become problems.

Learn more ...

Next month: Event Correlation

 
Heroix: provider of multiplatform monitoring and reporting software


Heroix delivers multiplatform monitoring and
reporting software that assures the highest level of
application and system availability and performance.