Window - Virtual Memory Minimum Too Low

The following message gets displayed on the server regularly:

Window - Virtual Memory Minimum Too Low

Your system is low on virtual memory. Windows is increasing the size of your virtual memory paging file. During this process, memory requests for some applications may be denied. For more information, see Help.

Thereafter the CPU consumption shoots up and the server applications get very slow to operate. Sometimes we even need to restart the server to resolve the issue.

Please Help.
Who is Participating?
serialbandConnect With a Mentor Commented:
You should actually check what programs you're running and find out what's eating up your RAM to need to swap to Virtual Memory, and why it's eating up your memory in general.  That's the very first thing to check.  Don't increase your pagefile just because of an error.  You need to track down what's causing you to need it.  How much RAM do you have?  How large is your disk?  How much free disk space do you have?  What is your server's role?

It looks like you're using a dynamic pagefile.  Don't do that.  You'll get severe fragmentation when your disk fills up and it will slow you down tremendously.  Are you running out of disk space?  That would cause windows to slow down.  You should remove your pagefile, then reboot, then add a fixed pagefile size up to 1 GB.  Don't use anything larger.  Those are outdated recommendations from over a decade ago.

I've set my Virtual Memory/pagefile/swap to 1 GB while running with 2 GB and later 4 GB of physical RAM with no problems.  I only run into that error when some process runs away and fills up RAM.  Identifying and Killing the process fixes the problem.  If you already have a decently large RAM (8 GB+), then you're running something heavy that's sucking up RAM or you're running something with a memory leak.  Then you need to fix the memory leak or buy more RAM.

There's absolutely no need to set 6 GB pagefiles or 12 GB pagefiles for 4GB or 8 GB systems.  Pagefiles on disk slows down your system and programs tremendously.  You really only need enough for the Windows memory management swap.  It's an overflow space.  I've even run systems without a pagefile with no ill effects.  If you've sized your system correctly, they'll run much faster without putting anything into a pagefile on a slow disk.  You can run Windows 7, Windows 2008, etc... with just 4 GB and no swap.

Virtual Memory was created at a time when RAM was much more expensive.  It was a work-around to allow for more RAM without costing the consumer an arm & leg.  You don't really need it if you have enough actual RAM.  Your system will run so much faster without it.

As such, I disagree with those outdated recommendations.  Those were for systems with 1GB RAM or less, back when they were very expensive. I would only recommend 1 GB of Virtual RAM on any newer systems that may need it.  If you need more, then you're running too many programs and have too many windows opened or didn't buy enough RAM.  You need a new server or an additional server or just buy more RAM.  The more swap you use, the slower your system will run.  If you're running a server, you should buy those 128 GB, 256 GB, or 512 GB systems and just have enough RAM for speedier operations.  Even when you run heavy database operations, they manage RAM and disk already.  You shouldn't add an additional layer of swap.
how high is the virtual memory set?  The recommended size is equivalent to 1.5 times the amount of RAM on your system.
but you can set it higher if you wish
Increase the size of your pagefile. Depending on what the server is used for, it can need more than what m$ normally recommends (the 1.5 times of actual RAM.

You should also consider adding more RAM to the server, provided your OS supports more.
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

SandeepSr System AdministratorCommented:
I also do agree with above two comments. You just need to increase the Virtual Memory according to the Physical Memory you have on your machine.

If you have 4 GB of Physical RAM then your virtual memory should be 6 GB or higher as per your requirement.

By default this Virtual Memory (Pagefile.sys) is stored on Drive C / OS Drive, but you can change it on another drive as well. If you going to see space issue after you increase the pagefile, I would suggest to change the path and keep it on different drive. You can split the file in two drives, but it may show some performance issue which may not came to notice drastically, but best choice would be to put it on single Drive.

Hope this helps
He's running Windows 2003 server (according to the tags he set, and the Topic area), that's an old OS, and for that you still need a large enough pagefile. Memory management has improved with newer OS's.
When I ran Windows 2003 and even Windows 2000, I kept my pagefile at 1GB or less.  Larger pagefiles slow down the system more.  He needs to find the process that's eating up RAM first.  Expanding a pagefile just for the sake of expanding a pagefile isn't going to solve a runaway program or memory leak.
ankurdkAuthor Commented:
Apologies for a late reply. Many thanks for the detailed suggestions.

Following are the config details of the server :

HDD: Free size 229 GB (Single partition)
RAM : 32 GB (This should suffice any high end application's process' working)
Server: Windows server 2003 x64

Virtual memory details :

Custom Size:
      Initial size (MB) : 2046
      Maximum size (MB) : 4092

One more point, just to elaborate the situation, this error occurs only during a particular time frame of the day (but occurs daily) and to resolve it, we analyze the high VM consumption applications and shut them down until the system works normally and then restart the closed applications and afterwards no issue arises during the whole day.

What maximum values of VM for "Initial size" and "Maximum Size" can I set ? Any other suggestions for the optimal RAM use are requested.

P.S: Snapshot of VM attached.

Thanks in advance for replying.VM
try the maw size as initial
If I manually set the Pagefile size, I usually set the minimum size to the same size as the maximum. This ensures that it gets one clear size and doesn't change all the time.

Check the programs that are running at the time, and once you know which ones they are, check with their manufacturers for updates/upgrades/bug-fixes. Most likely one of those programs is badly behaved and has a memory leak, and patches and updates often fixes those. After that you may not even need to play with the pagefile.

Also make sure your OS is always fully patched, but of course that shouldn't need have to be told anyway.
What processes are running?  What processes do you shut down.  Do you actually use all 32 GB of physical RAM when it complains about your virtual RAM?  If not, you should just remove your virtual RAM.  Windows sometimes tries to swap when it doesn't need to.  If you do need more RAM, can you expand your physical RAM?

Dynamic virtual RAM is bad long term.  Eventually you'll have a fragmented pagefile.  You should check that it hasn't already fragmented and set your minimum to your maximum.  If it is already fragmented, you should first remove your pagefile by selecting No paging file.  It will prompt you for a reboot.  Then you can set a new contiguous pagefile with the minimum set to the maximum.  You should size it to what you need.  It really depends on the software you run and the role of your server.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.