[MITgcm-support] MITgcm virtual memory usage

Ed Hill ed at eh3.com
Thu Sep 21 23:13:34 EDT 2006


On Thu, 21 Sep 2006 19:03:53 -0700 (PDT)
jdawe at eos.ubc.ca wrote:

> When I run MITgcm in my current configuration, I get the model
> taking up 661MB of memory, and 1570MB of virtual memory.  Why so
> much virtual RAM? The model's resident memory size never seems to
> change, so it doesn't look like it's swapping to that virtual ram
> much.  Am I doing something wrong? Is there any way to reduce the
> virtual memory usage?

Hi Jordan,

Yes, you can reduce the overall memory footprint by reducing the size
of the domain and/or by turning off packages or reducing the size of
the buffers within some packages.  The prime candidates are timeave
and diagnostics which have significant work arrays.

But, really, who cares what the virtual memory usage is?  What
difference does it make?  The main thing that matters is whether
your model fits in memory or not.  If it spills over into swap then
you have a huge performance hit.  But if you can hold the entire
problem in RAM (without digging into swap on a continual basis) then
what difference does it make whether you use a few more MB of RAM or
not?

Oh, and don't place too much faith in any numbers you get from ps,
top, or their ilk.  They're quite approximate.  See:

http://virtualthreads.blogspot.com/2006/02/understanding-memory-usage-on-linux.html

for a quick intro.

Swap is another matter.  It should be very easy to see (and even
*hear* if you're near enough to the machine) whether your run
requires continuous swapping to disk.  If it does, you should buy
more RAM, reduce your problem size, and/or partition it over more
nodes using MPI.

Ed

-- 
Edward H. Hill III, PhD  |  ed at eh3.com  |  http://eh3.com/



More information about the MITgcm-support mailing list