Introduction to Microsoft Exchange Server 2003 /3GB and USERVA = 3030
On this page I have three examples of how you can improve the performance of your Exchange Server 2003. If your server has more than 1GB of physical RAM, then you really should amend your boot.ini file. Adding the /3GB switch to boot.ini is a
'cost nothing' idea that will result in a faster response for your Exchange email clients.
Topics for /3GB and USERVA =3030
on an Exchange Server 2003
Appending the /3GB switch to your boot.ini is a simple practical task that makes more physical and virtual memory available to Exchange 2003. In particular, this switch will increase the memory
allocation for Store.exe. The way that /3GB improves performance is two fold, firstly, by increasing the available virtual memory, (I emphasise virtual memory) from 2GB -> 3GB; secondly by upping the
physical memory allocation from 576 to 896 MB.
Incidentally, you can check how Store.exe consumes memory by creating a Performance log for your Microsoft Exchange Server, or by a quick check of Task Manager. (Ctrl Shift Esc)
You may remember from some distant theory lesson, that the Windows operating system has 4GB of virtual memory. Normally this virtual memory is split 2GB : 2GB between the operating system and the
programs (user mode), what the /3GB switch does is allocate more
memory for user
processes and less for the operating system. Exchange 2003's Store.exe is the main beneficiary of this extra user mode memory.
N.B. It is best to append a new line to your boot.ini, that way if
the /3GB instruction not work, then you can revert to the previous configuration. Thanks to Adam Q for suggesting this addition.
The SolarWinds Exchange Monitor
Here is a
free tool to monitor your Exchange Server. Download and
install the utility, then inspect your mail queues, monitor the Exchange
server's memory, confirm there is enough disk space and check the CPU
This is the real deal - there is no catch. SolarWinds provides this
fully-functioning freebie, as part of their commitment to supporting
the network management community.
Even if you have already added the /3GB setting to your Exchange 2003 Server, I still recommend appending the /USERVA=3030 switch to your boot.ini. 3030 refers to 3,030 MB of memory allocated to
each process. Without /USERVA, the plain /3GB switch would allocate 3,072 MB of memory.
It is easy to lose track of the numbers here, compared with 3,072, a 42 MB difference does not sound very much, but 42 MB
is actually a very big number at it results in a big improvement to the Kernel memory space PTE (Page Table Entries). In a nutshell, the Windows Server 2003 operating system make efficient use of
the extra 42 MB, and that in turn, improves the performance of the Exchange 2003 server.
Here is an example of what to append in your server's boot.ini. Just add : /3GB /USERVA=3030 to your existing boot.ini command.
Before adding the switch (All one line)
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS= "Windows Server 2003" /fastdetect
After appending /3GB / USERVA = 3030 (All one line)
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS= "Windows Server 2003" /fastdetect /3GB /USERVA=3030
(I say again, the above command should be all on one line in Boot.ini).
Important: The above example was taken from my Windows Server 2003 machine to illustrate the /3GB switch. My point is do not alter the rdisk() or partition() values on your Exchange 2003 server otherwise it will not reboot.
Footnote: Recommendation from Richard Blunden: The /3GB userva=3030 is a good addition to the Global Catalogue servers, but not so useful for an Exchange Server.
Remember to remove the read only attribute from boot.ini before you edit this file with notepad.
Guy Recommends: A Free Trial of the Network Performance Monitor
Network Performance Monitor
will help you discover what's happening on your network. This
utility will also guide you through troubleshooting; the dashboard will
indicate whether the root cause is a broken link, faulty equipment or
What I like best is the way NPM suggests solutions to network
also has the ability to monitor the health of individual VMware
virtual machines. If you are interested in troubleshooting, and creating
network maps, then I recommend that you try NPM now.
Changing HeapDeCommitFreeBlockThreshold setting does not specifically help Exchange 2003; it's more that it helps the server run more efficiently, especially if the server runs other programs.
Time for a little background information. A heap is a reserved area of memory. Exchange 2003 is very reluctant to free up its heaps. However, if you set this HeapDeCommitFreeBlockThreshold key in the
registry it forces the Heap Manager to free up memory. This is how the logic works, if there is a small heap then Exchange should keep the memory, however once the free memory area reaches a threshold, then
the heap manager takes the free area away from Exchange's Store.exe and makes it available to other processes.
One more point, before you apply the /3GB switch, check the Windows and Microsoft Exchange combinations. In fact one reader, Eric R, has already corrected me on this compatibility jungle. So, double check
the version and edition of both Windows and Exchange before you change boot.ini's /3GB switch.
The best combination, as ever, is Exchange 2003 on Windows 2003. (/3GB works a treat).
Exchange 2003 would be O.K on a Windows 2000 Advanced server.
Avoid this /3GB switch on standard or small business editions of Windows 2000.
There is no need to use this /3GB switch on front-end Exchange 2003 servers. The reason being front-end servers do not have any Mailbox stores as these are on the back-end servers. Remember it's
store that has the most to gain from the extra memory allocation.
Guy's Challenge - Download
this free device backup utility
Kiwi CatTools is a free program for backing up configuration settings on
hardware devices. Here is Guy's challenge. If you
download CatTools, then it will not only take care of backups, but
also it will show you something new about the hardware on you
network. I could give you a money back guarantee - but CatTools is
already free! Thus, I just make a techie to techie challenge, you
will learn more about your network if you:
Normally there is not that much you can configure to improve Exchange Server 2003's built-in memory management. However, if you have more than 1GB of physical RAM then add two extra switches to boot.ini. /3GB and USERVA = 3030.
If you think Exchange 2003 is holding on to memory that could be better allocated to other processes, then set the threshold for: HeapDeCommitFreeBlockThreshold.
If you like this page then please share it with your friends
Here is a
free tool to monitor your Exchange Server.
Download the utility, then inspect your mail queues, monitor Exchange server's
memory, confirm there is enough disk space and check the CPU utilization.