On Apr 30, 2009, at 8:49 AM, Steven Truelove wrote:

I have seen this problem in our own MPI application.  The 'simple'
solution I have seen used in at least one MPI implementation for this
problem is to prevent the malloc/free implementation being used from
ever returning memory to the OS. The virtual/physical mapping can only
become invalid if virtual addresses are given back to the OS, then
returned with different physical pages.  Under Linux with at least, it
is quite easy to tell libc to never return memory to the OS.


Unfortunately, this is a false assumption. There are definitely code paths in glibc where, even if you use the mallopt() hints, memory *can* (will) be returned to the OS. This led Open MPI to change its memory allocation / intercept scheme in 1.3.2. See:

    http://www.open-mpi.org/community/lists/announce/2009/03/0029.php

--
Jeff Squyres
Cisco Systems

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to