MATLAB: Put a limit on Memory Matlab Uses

MATLABmemorymemory management

This morning I froze our local workstation with Matlab while error testing my code. I accidentally created variables requiring large amounts of memory (>100GB) while the workstation only has 50GB to utilize. The 64bit 2009A Matlab does not give the usual 'out of memory' response other computers will, but instead I believe it tries to use hard-disk space to create all the variables. The computer runs Windows Server 2008.
Is there a way to limit the amount of memory used by Matlab so that there is, say always at least 2 GB of memory available for the user?
Thanks Blaine

Best Answer

The behavior you are seeing is a result of Windows trying to "be nice" and allocate the memory you have requested. Since you have a 64-bit address range, it will try as hard as it can to satisfy your request .... although when things are swapped out to disk, they get really slow.
I am not aware of a way to limit an application's memory usage on Windows. I checked Group Policy and found nothing there, I would think that is where you would be able to control such a thing.
A way you could limit this type of behavior is to set your page file size to a certain amount. This way, instead of Windows trying to grow the page file size automatically, it would stop and you would likely get the out of memory error.