Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] memory leaks upon dup/split/create of communicators?
From: VandeVondele Joost (joost.vandevondele_at_[hidden])
Date: 2014-05-01 03:53:32


Hi Gilles, I tested your patch on top of 1.8.1, and it fixes the cartesian comm leaks, thanks! Meanwhile, I had a look at the leaks of #include <mpi.h> int main (int argc, char *argv[]) { MPI_Init(&argc, &argv); MPI_Finalize(); } which ideally should have no leaks at all, as this would simplify leak hunting very significantly, since it would make automated regression testing much easier (both on the mpi user side of thing, i.e. our main interest, but also from the devel side). The summary is SUMMARY: LeakSanitizer: 29057 byte(s) leaked in 84 allocation(s). with the full traces attached (against the slightly patched 1.8.1) BTW, in case you wonder how to get these traces, just build openmpi with '-g -fno-omit-frame-pointer' and the application with '-g -fno-omit-frame-pointer -fsanitize=leak' using gcc 4.9.0, it is very convenient. Joost ________________________________________ From: devel [devel-bounces_at_[hidden]] on behalf of Gilles Gouaillardet [gilles.gouaillardet_at_[hidden]] Sent: Wednesday, April 30, 2014 8:35 AM To: Open MPI Developers Subject: Re: [OMPI devel] memory leaks upon dup/split/create of communicators? Joost, i created #4581 and attached a patch (for the trunk) in order to solve this leak (and two similar ones) Cheers, Gilles On 2014/04/29 5:18, VandeVondele Joost wrote: > Hi, > > I applied the patch from ticket #4569 (to 1.8.1), and things improved (in particular the reported issue is gone). The next big leaks seems to relate to Cartesian communicators. > > Direct leak of 9600 byte(s) in 300 object(s) allocated from: > #0 0x7f7cd2c8e793 in __interceptor_calloc ../../../../gcc/libsanitizer/lsan/lsan_interceptors.cc:89 > #1 0x7f7cd3a92552 in mca_topo_base_cart_create ../../../../ompi/mca/topo/base/topo_base_cart_create.c:89 > #2 0x7f7cd3a52bfd in PMPI_Cart_create /data/vjoost/openmpi-1.8.1/build/ompi/mpi/c/profile/pcart_create.c:103 > #3 0x7f7cd3d0f4bf in ompi_cart_create_f /data/vjoost/openmpi-1.8.1/build/ompi/mpi/fortran/mpif-h/profile/pcart_create_f.c:82 > #4 0x1bfdf6a in __message_passing_MOD_mp_cart_create /data/vjoost/clean/cp2k/cp2k/src/common/message_passing.F:984 > > Direct leak of 21600 byte(s) in 300 object(s) allocated from: > #0 0x7f7cd2c8e3a8 in __interceptor_malloc ../../../../gcc/libsanitizer/lsan/lsan_interceptors.cc:66 > #1 0x7f7cd3a3501f in opal_obj_new ../../opal/class/opal_object.h:467 > #2 0x7f7cd3a3501f in ompi_group_allocate ../../ompi/group/group_init.c:63 > #3 0x7f7cd3a2b192 in ompi_comm_fill_rest ../../ompi/communicator/comm.c:1827 > #4 0x7f7cd3a2b192 in ompi_comm_enable ../../ompi/communicator/comm.c:1782 > #5 0x7f7cd3a924d2 in mca_topo_base_cart_create ../../../../ompi/mca/topo/base/topo_base_cart_create.c:164 > #6 0x7f7cd3a52bfd in PMPI_Cart_create /data/vjoost/openmpi-1.8.1/build/ompi/mpi/c/profile/pcart_create.c:103 > #7 0x7f7cd3d0f4bf in ompi_cart_create_f /data/vjoost/openmpi-1.8.1/build/ompi/mpi/fortran/mpif-h/profile/pcart_create_f.c:82 > #8 0x1bfdf6a in __message_passing_MOD_mp_cart_create /data/vjoost/clean/cp2k/cp2k/src/common/message_passing.F:984 > > Joost > _______________________________________________ devel mailing list devel_at_[hidden] Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel Link to this post: http://www.open-mpi.org/community/lists/devel/2014/04/14658.php