Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] MALLOC_MMAP_MAX (and MALLOC_MMAP_THRESHOLD)
From: Chris Samuel (chris_at_[hidden])
Date: 2010-01-24 05:54:56


On Sun, 10 Jan 2010 03:55:33 am Eugene Loh wrote:

> The default (I think this means Linux, whether with gcc, gfortran, Sun f90,
> etc.) is to use mmap to malloc large allocations.

This was brought in by glibc version 2.3:

 http://en.wikipedia.org/wiki/Malloc#dlmalloc_.28the_glibc_allocator.29

It has the side effect of making the behaviour of malloc() in response to
resource limits dependent on the size of the allocation being made. For
example RLIMIT_DATA (maximum size of a processes data segment) will only be
enforced for small allocations that don't trigger the use of mmap().

Had great fun with that trying to track down why the mem property of Torque
PBS jobs wasn't being enforced all the time.

cheers,
Chris

-- 
 Chris Samuel  :  http://www.csamuel.org/  :  Melbourne, VIC
This email may come with a PGP signature as a file. Do not panic.
For more info see: http://en.wikipedia.org/wiki/OpenPGP