MORE INFORMATION
Note the following recommendations:
- If you expect over 2,000 user connections, use Windows 2000 Advanced Server for servers that are running Exchange 2000.
- Use the /3GB switch when you run Exchange 2000 on a Windows 2000 Advanced Server-based computer if there is 1 gigabyte (GB) or more of physical memory on the server, and if the server is home to mailboxes or public folders. If the server does not have any mailboxes or public folders on it (such as a mail gateway), do not use the /3GB switch.
- Monitor virtual memory use on an Exchange 2000 server, especially if you are running Exchange 2000 on a Windows 2000 Server-based computer. Monitoring is especially important as the server approaches 2,000 user connections.
Possible Virtual Memory Issues
By default, Windows 2000 Advanced Server reserves 2 GB of virtual address space for the kernel and allows user mode processes, such as the Exchange 2000 information store process (Store.exe) to use 2 GB of virtual address space. Virtual address space for a specific process is allocated at startup and increases as more memory is used during run time. It is very important that the Store.exe process not run out of virtual address space. If the Store.exe process runs out of virtual address space, memory allocations fail (even if there is additional physical RAM available), and you must restart the Exchange 2000 Information Store service.
For example, a server that is running Exchange 2000 on Windows 2000 Advanced Server with 2 GB of physical RAM (without the
/3GB switch in the Boot.ini file) runs out of memory when the Store.exe virtual address space reaches 2 GB. Windows Task Manager shows that only about 1.5 GB is actually used, but the server is still out of memory.
Therefore, on a server that is running Exchange 2000 on Windows 2000 Advanced Server with over 1 GB of memory, you need to modify the Windows 2000 Advanced Server Boot.ini file so that 3 GBs of memory are available for user-mode programs.
For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
266096
Exchange 2000 requires /3GB switch with more than 1 gigabyte of physical RAM
The
/3GB switch in the Boot.ini file is intended to be used on Windows 2000 Advanced Server and Microsoft Windows 2000 Datacenter Server. If you use this switch on a computer that is running Microsoft Windows 2000 Professional or Microsoft Windows 2000 Server, the kernel components are loaded in the memory space the same way that the kernel components would be loaded on a computer that is running Windows 2000 Advanced Server or Windows 2000 Datacenter Server, by using 4 GB RAM tuning. This functionality allows device driver developers to test drivers in this configuration without needing to install Windows 2000 Advanced Server and Windows 2000 Datacenter Server. User mode is still limited to 2 GB; therefore, virtual memory limits can be reached more easily if Exchange 2000 is running on a Windows 2000 Server-based computer.
The following factors affect the virtual address space size in the Store.exe process:
- Initial allocation at startup
- The number of storage groups or Messaging Databases (MDBs) on the server
- The number of threads (open connections) that are running
- The size of the information store database cache
The number of open connections and storage groups has the most significant impact on virtual memory.
To monitor the virtual memory consumption with System Monitor, add the Virtual Bytes counter for the Store.exe process to ensure an accurate reading of the virtual space. The Store.exe process is the primary Exchange 2000 process that you need to monitor; other Exchange 2000 processes do not grow large enough to cause any problems. Check the Process-Virtual Bytes System Monitor object that is mapped to the Store.exe instance to determine an accurate value for the virtual address space that the information store has allocated. On a server that has a
/3GB switch in the Boot.ini file, the virtual address space should be less than 2.8 GB. On a server that does not have the
/3GB switch in the Boot.ini file, the virtual address space should be less than 1.8 GB.
When you are running Windows 2000 Server and you see values that are approaching 1.8 GB, it is recommended that you reduce user connections (reduce the number of mailboxes) and do not add any additional storage groups. Although virtual memory use depends on several factors, the number of open connections and the number of storage groups has the most significant impact.
The situation improves considerably if you apply Exchange 2000 Service Pack 1 (SP1), as SP1 has updated the algorithm for allocating and releasing virtual memory by the Exchange 2000 Jet engine.
For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
302254
Computer that is running Exchange 2000 and Windows 2000 Server may run out of virtual memory with event ID 12800