---------- Forwarded message ----------
From: Brian Blank <brianbl...@gmail.com>
List-Post: devel@lists.open-mpi.org
Date: Fri, May 1, 2009 at 11:54 AM
Subject: Re: [OMPI devel] Fwd: Purify found bugs inside open-mpi library
To: Terry Dontje <terry.don...@sun.com>


Hi Terry,

I did a memset() prior to the call to processor_info(), and the UMR went
away.  I further tested by setting pinfo.pi_state to -1 prior to the call to
processor_info(), and processor_info() always sets pinfo.pi_state to 2.
Therefore, I am starting to suspect this is a bug in purify.  Maybe purify
is having issues detecting that this variable was updated by system code.
I'm going to forward a sample program to the IBM purify team to have them
investigate further.

I also attached a copy of mpi_purify.txt that contains all the purify
findings.  Therefore a handful of UMR errors that occur through different
call stacks.  Also, there are 2 file descriptors left open & a lot of memory
that leaked despite me calling MPI_Finalize().

Let me know if you need me to try something else or to produce any
additional output.

Thanks again,
Brian


On Thu, Apr 30, 2009 at 10:11 AM, Terry Dontje <terry.don...@sun.com> wrote:

> So I've been kibitzing with Jeff on the below.  If you do a memset of pinfo
> prior to the line you show below does the UMR go away.  I believe it will
> not and that you probably will need to do something like pinfo.pi_state = 0.
>  Can you try this out for me?
> Thanks,
>
> --td
>
>
> Brian Blank wrote:
>
>> Hi Jeff,
>>
>> That definetly worked for me.  Thanks so much for you help.
>>
>> Purify did find some other UMR (unitialize memory read) errors though, but
>> they don't seem to be negativley impacting my application right now.
>>  Nonetheless, I'll post them later today in case anyone is interested in
>> them.
>>
>> Just to give you a sample of what it see's now, one of the UMR errors
>> seems a little odd ... paffinity_solaris_module.c line 180.
>> if (P_ONLINE == pinfo.pi_state || P_NOINTR == pinfo.pi_state) {
>>
>> I'll post the rest of the UMR errors later today.
>>
>> Thanks again,
>> Brian
>>
>> On Apr 29, 2009, at 4:06 PM, Jeff Squyres <jsquy...@cisco.com> wrote:
>>
>>  Actually, I think your program is erroneous -- it looks like you're using
>>> number of bytes for the sizes[] array when it really should be using number
>>> of elements.  Specifically, it should be:
>>>
>>>   sizes[0] = (int) sizeof(tstruct.one);
>>>   sizes[1] = 1;
>>>   sizes[2] = 1;
>>>   sizes[3] = 1;
>>>
>>> Since MPI knows the sizes of datatypes, you specify counts of datatypes
>>> -- not numbers of bytes.
>>>
>>> That seemed to make your program work for me; double check and ensure
>>> that it works for you.
>>>
>>>
>>> On Apr 29, 2009, at 1:21 PM, Brian Blank wrote:
>>>
>>>  To Whom This May Concern:
>>>>
>>>> I originally sent this to the users list, but realizing now that this
>>>> might be more appropriate for the developer's list as it is dealing with
>>>> issues internal to the openmpi library (sorry for the dual distribution).
>>>>  Please start with second email first.
>>>>
>>>> Thanks,
>>>> Brian Blank
>>>>
>>>> ---------- Forwarded message ----------
>>>> From: Brian Blank <brianbl...@gmail.com>
>>>> Date: Wed, Apr 29, 2009 at 1:09 PM
>>>> Subject: Re: Purify found bugs inside open-mpi library
>>>> To: us...@open-mpi.org
>>>>
>>>>
>>>> To Whom This May Concern:
>>>>
>>>> I've been trying to dig a little deeper into this problem and found some
>>>> additional information.
>>>>
>>>> First, the stack trace for the ABR and ABW were different. The ABR
>>>> problem occurred in datatype_pack.h while the ABW problem occurred in
>>>> datatype_unpack.h.  The problem appears to be the same still.  Both errors
>>>> are occurring during a call to MEMCPY_CSUM().
>>>>
>>>> I also found there are two different variables playing into this bug.
>>>>  There is _copy_blength and _copy_count.  At the top of the function, both
>>>> of these variables are set to 2 bytes for MPI_SHORT, 4 bytes for MPI_LONG,
>>>> and 8 bytes for MPI_DOUBLE.  Then, these variables are multiplied together
>>>> to get the size of the memcpy().  Unfortunetly, the correct size are either
>>>> of these variables before they are squared.  There sometimes appears to be
>>>> an optimization where if two variables are next to each other, they are
>>>> sometimes converted into a MPI_BYTE where the size is also incorrectly
>>>> taking these squared values into consideration.
>>>>
>>>> I wrote a small test program to illustrate the problem and attached it
>>>> to this email.  First, I configured openmpi 1.3.2 with the following
>>>> options:
>>>>
>>>> ./configure --prefix=/myworkingdirectory/openmpi-1.3.2.local
>>>> --disable-mpi-f77 --disable-mpi-f90 --enable-debug --enable-mem-debug
>>>> --enable-mem-profile
>>>>
>>>> I then modified datatype_pack.h & datatype_unpack.h located in
>>>> openmpi-1.3.2/ompi/datatype directory in order to produce additional
>>>> debugging output.  The new versions are attached to this email.
>>>>
>>>> Then, I executed "make all install"
>>>>
>>>> Then, I write the attached test.c program.  You can find the output
>>>> below.  The problems appear in red.
>>>>
>>>> 0: sizes     '3'  '4'  '8'  '2'
>>>> 0: offsets   '0'  '4'  '8'  '16'
>>>> 0: addresses '134510640' '134510644' '134510648' '134510656'
>>>> 0: name='MPI_CHAR'  _copy_blength='3'  orig_copy_blength='1'
>>>>  _copy_count='3'  _source='134510640'
>>>> 0: name='MPI_LONG'  _copy_blength='16'  orig_copy_blength='4'
>>>>  _copy_count='4'  _source='134510644'
>>>> 0: name='MPI_DOUBLE'  _copy_blength='64'  orig_copy_blength='8'
>>>>  _copy_count='8'  _source='134510648'
>>>> 0: name='MPI_SHORT'  _copy_blength='4'  orig_copy_blength='2'
>>>>  _copy_count='2'  _source='134510656'
>>>> 0: one='22'  two='222'  three='33.300000'  four='44'
>>>> 1: sizes     '3'  '4'  '8'  '2'
>>>> 1: offsets   '0'  '4'  '8'  '16'
>>>> 1: addresses '134510640' '134510644' '134510648' '134510656'
>>>> 1: name='MPI_CHAR'  _copy_blength='3'  orig_copy_blength='1'
>>>>  _copy_count='3'  _destination='134510640'
>>>> 1: name='MPI_LONG'  _copy_blength='16'  orig_copy_blength='4'
>>>>  _copy_count='4'  _destination='134510644'
>>>> 1: name='MPI_DOUBLE'  _copy_blength='64'  orig_copy_blength='8'
>>>>  _copy_count='8'  _destination='134510648'
>>>> 1: name='MPI_SHORT'  _copy_blength='4'  orig_copy_blength='2'
>>>>  _copy_count='2'  _destination='134510656'
>>>> 1: one='22'  two='222'  three='33.300000'  four='44'
>>>>
>>>> You can see from the output that the MPI_Send & MPI_Recv functions are
>>>> reading or writing too much data from my structure, causing an overflow
>>>> condition to occur.  I believe this is causing my application to crash.
>>>>
>>>> Any help on this problem would be appreciated.  If there is anything
>>>> else that you need from me, just let me know.
>>>>
>>>> Thanks,
>>>> Brian
>>>>
>>>>
>>>>
>>>>
>>>> On Tue, Apr 28, 2009 at 9:58 PM, Brian Blank <brianbl...@gmail.com>
>>>> wrote:
>>>> To Whom This May Concern:
>>>>
>>>> I am having problems with an OpenMPI application I am writing on the
>>>> Solaris/Intel AMD64 platform.  I am using OpenMPI 1.3.2 which I compiled
>>>> myself using the Solaris C/C++ compiler.
>>>>
>>>> My application was crashing (signal 11) inside a call to malloc() which
>>>> my code was running.  I thought it might be a memory overflow error that 
>>>> was
>>>> causing this, so I fired up Purify.  Purify found several problems inside
>>>> the the OpenMPI library.  I think one of the errors is serious and might be
>>>> causing the problems I was looking for.
>>>>
>>>> The serious error is an Array Bounds Write (ABW) which occurred 824
>>>> times through 312 calls to MPI_Recv().  This error means that something
>>>> inside the OpenMPI library is writing to memory where it shouldn't be
>>>> writing to.  Here is the stack trace at the time of this error:
>>>>
>>>> Stack Trace 1 (Occurred 596 times)
>>>>
>>>> memcpy    rtlib.o
>>>> unpack_predefined_data    [datatype_unpack.h:41]
>>>> MEMCPY_CSUM( _destination, *(SOURCE), _copy_blength, (CONVERTOR) );
>>>> ompi_generic_simple_unpack [datatype_unpack.c:419]
>>>> ompi_convertor_unpack [convertor.c:314]
>>>> mca_pml_ob1_recv_frag_callback_match [pml_ob1_recvfrag.c:218]
>>>> mca_btl_sm_component_progress [btl_sm_component.c:427]
>>>> opal_progress [opal_progress.c:207]
>>>> opal_condition_wait [condition.h:99]
>>>> <Writing 64 bytes to 0x821f738 in heap (16 bytes at 0x821f768 illegal).>
>>>> <Address 0x821f738 is 616 bytes into a malloc'd block at 0x821f4d0 of
>>>> 664 bytes.>
>>>>
>>>> Stack Trace 2 (Occurred 228 times)
>>>>
>>>> memcpy    rtlib.o
>>>> unpack_predefined_data    [datatype_unpack.h:41]
>>>> MEMCPY_CSUM( _destination, *(SOURCE), _copy_blength, (CONVERTOR) );
>>>> ompi_generic_simple_unpack [datatype_unpack.c:419]
>>>> ompi_convertor_unpack [convertor.c:314]
>>>> mca_pml_ob1_recv_request_progress_match [pml_ob1_recvreq.c:624]
>>>> mca_pml_ob1_Recv_req_start [pml_ob1_recvreq.c:1008]
>>>> mca_pml_ob1_recv [pml_ob1_irecv.c:103]
>>>> MPI_Recv [precv.c:75]
>>>> <Writing 64 bytes to 0x821f738 in heap (16 bytes at 0x821f768 illegal).>
>>>> <Address 0x821f738 is 616 bytes into a malloc'd block at 0x821f4d0 of
>>>> 664 bytes.>
>>>>
>>>>
>>>> I'm not that familiar with the under workings of the openmpi library,
>>>> but I tried to debug it anyway.  I noticed that it was copying a lot of
>>>> extra bytes for MPI_LONG and MPI_DOUBLE types.  On my system, MPI_LONG
>>>> should have been 4 bytes, but was copying 16 bytes.  Also, MPI_DOUBLE 
>>>> should
>>>> have been 8 bytes, but was copying 64 bytes.  It seems the _copy_blength
>>>> variable was being set to high, but I'm not sure why.  The above error also
>>>> shows 64 bytes being read, where my debugging shows a 64 byte copy for all
>>>> MPI_DOUBLE types, which I feel should have been 8 bytes.  Therefore, I
>>>> really believe _copy_blength is being set to high.
>>>>
>>>>
>>>> Interestingly enough, the call to MPI_Isend() was generating an ABR
>>>> (Array Bounds Read) error in the exact same line of code.  The ABR error
>>>> sometimes can be fatal if the bytes being read is not a legal address, but
>>>> the ABW error is usually a much more fatal error because it is definitely
>>>> writing into memory that is probably used for something else.  I'm sure 
>>>> that
>>>> if we fix the ABW error, the ABR error should fix itself too as it's the
>>>> same line of code.
>>>>
>>>> Purify also found 14 UMR (Uninitialized memory read) errors inside the
>>>> OpenMPI library.  Sometimes this can be really bad if there are any
>>>> decisions being made as a result of reading this memory location.  But for
>>>> now, let's solve the serious error I reported above first, then I will send
>>>> you the UMR errors next.
>>>>
>>>> Any help you can provide would be greatly appreciated.
>>>>
>>>> Thanks,
>>>> Brian
>>>>
>>>>
>>>>
>>>> <datatype_pack.h><datatype_unpack.h><test.c>_______________________________________________
>>>>
>>>> devel mailing list
>>>> de...@open-mpi.org
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>
>>>
>>>
>>> --
>>> Jeff Squyres
>>> Cisco Systems
>>>
>>> _______________________________________________
>>> devel mailing list
>>> de...@open-mpi.org
>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>
>> _______________________________________________
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>
>
>
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            _writev        [libc.so.1]
            writev         [libc.so.1]
            mca_oob_tcp_msg_send_handler [oob_tcp_msg.c:265]
               {
                   int rc;
                   while(1) {
            =>         rc = writev(peer->peer_sd, msg->msg_rwptr, 
msg->msg_rwnum);
                       if(rc < 0) {
                           if(opal_socket_errno == EINTR)
                               continue;
            mca_oob_tcp_peer_send [oob_tcp_peer.c:197]
            mca_oob_tcp_send_nb [oob_tcp_send.c:167]
            orte_rml_oob_send [rml_oob_send.c:144]
            orte_rml_oob_send_buffer [rml_oob_send.c:269]
            allgather      [grpcomm_bad_module.c:369]
      Reading 160 bytes from 0x823fc50 in the heap (4 bytes at 0x823fcb7 
uninit).
      Address 0x823fc50 is at the beginning of a malloc'd block of 256 bytes.
      This block was allocated from thread 1:
            realloc        [rtlib.o]
            opal_dss_buffer_extend [dss_internal_functions.c:63]
            opal_dss_copy_payload [dss_load_unload.c:164]
            allgather      [grpcomm_bad_module.c:363]
            modex          [grpcomm_bad_module.c:497]
            ompi_mpi_init  [ompi_mpi_init.c:626]
            MPI_Init       [pinit.c:80]
            main           [my program]
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            solaris_module_get [paffinity_solaris_module.c:142]
                   }
               
                   opal_output_verbose(5, opal_paffinity_base_output,
            =>         "paffinity:solaris: obind=%d", obind);
               
                   /* if there isn't any processor binded, just zero out and 
return */
                   OPAL_PAFFINITY_CPU_ZERO(*cpumask);
            opal_paffinity_base_get [paffinity_base_wrappers.c:51]
            init_maffinity [btl_sm.c:141]
            sm_btl_first_time_init [btl_sm.c:179]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      Reading 4 bytes from 0x80467e4 on the stack of thread 1.
      Address 0x80467e4 is local variable "obind" in function 
solaris_module_get.
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            solaris_module_get [paffinity_solaris_module.c:146]
               
                   /* if there isn't any processor binded, just zero out and 
return */
                   OPAL_PAFFINITY_CPU_ZERO(*cpumask);
            =>     if (PBIND_NONE != obind) {
                       OPAL_PAFFINITY_CPU_SET(obind, *cpumask);
                   }
                   return OPAL_SUCCESS;
            opal_paffinity_base_get [paffinity_base_wrappers.c:51]
            init_maffinity [btl_sm.c:141]
            sm_btl_first_time_init [btl_sm.c:179]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      Reading 4 bytes from 0x80467e4 on the stack of thread 1.
      Address 0x80467e4 is local variable "obind" in function 
solaris_module_get.
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:79]
                   mseg.mbs_start_addr =
                       
mpool_sm->sm_allocator->alc_alloc(mpool_sm->sm_allocator, size, align, 
registration);
               
            =>     if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
                       opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
            mpool_calloc   [btl_sm.c:108]
            sm_btl_first_time_init [btl_sm.c:307]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
            MPI_Init       [pinit.c:80]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:81]
               
                   if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
            =>         opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
               
                   return mseg.mbs_start_addr;
            mpool_calloc   [btl_sm.c:108]
            sm_btl_first_time_init [btl_sm.c:307]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
            MPI_Init       [pinit.c:80]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:79]
                   mseg.mbs_start_addr =
                       
mpool_sm->sm_allocator->alc_alloc(mpool_sm->sm_allocator, size, align, 
registration);
               
            =>     if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
                       opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
            ompi_free_list_grow [ompi_free_list.c:200]
            ompi_free_list_init_ex_new [ompi_free_list.c:163]
            ompi_free_list_init_new [ompi_free_list.h:173]
            sm_btl_first_time_init [btl_sm.c:339]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:81]
               
                   if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
            =>         opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
               
                   return mseg.mbs_start_addr;
            ompi_free_list_grow [ompi_free_list.c:200]
            ompi_free_list_init_ex_new [ompi_free_list.c:163]
            ompi_free_list_init_new [ompi_free_list.h:173]
            sm_btl_first_time_init [btl_sm.c:339]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:79]
                   mseg.mbs_start_addr =
                       
mpool_sm->sm_allocator->alc_alloc(mpool_sm->sm_allocator, size, align, 
registration);
               
            =>     if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
                       opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
            ompi_free_list_grow [ompi_free_list.c:200]
            ompi_free_list_init_ex_new [ompi_free_list.c:163]
            ompi_free_list_init_new [ompi_free_list.h:173]
            sm_btl_first_time_init [btl_sm.c:352]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:81]
               
                   if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
            =>         opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
               
                   return mseg.mbs_start_addr;
            ompi_free_list_grow [ompi_free_list.c:200]
            ompi_free_list_init_ex_new [ompi_free_list.c:163]
            ompi_free_list_init_new [ompi_free_list.h:173]
            sm_btl_first_time_init [btl_sm.c:352]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:79]
                   mseg.mbs_start_addr =
                       
mpool_sm->sm_allocator->alc_alloc(mpool_sm->sm_allocator, size, align, 
registration);
               
            =>     if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
                       opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
            sm_fifo_init   [btl_sm.h:214]
            mca_btl_sm_add_procs [btl_sm.c:513]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
            MPI_Init       [pinit.c:80]
            main           [my program]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:81]
               
                   if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
            =>         opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
               
                   return mseg.mbs_start_addr;
            sm_fifo_init   [btl_sm.h:214]
            mca_btl_sm_add_procs [btl_sm.c:513]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
            MPI_Init       [pinit.c:80]
            main           [my program]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read (7 times)
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:79]
                   mseg.mbs_start_addr =
                       
mpool_sm->sm_allocator->alc_alloc(mpool_sm->sm_allocator, size, align, 
registration);
               
            =>     if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
                       opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
            ompi_free_list_grow [ompi_free_list.c:200]
            mca_btl_sm_alloc [btl_sm.c:612]
            mca_bml_base_alloc [bml.h:241]
            mca_pml_ob1_send_request_start_copy [pml_ob1_sendreq.c:509]
            mca_pml_ob1_send_request_start_btl [pml_ob1_sendreq.h:363]
            mca_pml_ob1_send_request_start [pml_ob1_sendreq.h:429]
            mca_pml_ob1_isend [pml_ob1_isend.c:87]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]
      UMR: Uninitialized memory read (7 times)
      This is occurring while in thread 1:
            mca_mpool_sm_alloc [mpool_sm_module.c:81]
               
                   if(mpool_sm->mem_node >= 0) {
                       mseg.mbs_len = size;
            =>         opal_maffinity_base_bind(&mseg, 1, mpool_sm->mem_node);
                   }
               
                   return mseg.mbs_start_addr;
            ompi_free_list_grow [ompi_free_list.c:200]
            mca_btl_sm_alloc [btl_sm.c:612]
            mca_bml_base_alloc [bml.h:241]
            mca_pml_ob1_send_request_start_copy [pml_ob1_sendreq.c:509]
            mca_pml_ob1_send_request_start_btl [pml_ob1_sendreq.h:363]
            mca_pml_ob1_send_request_start [pml_ob1_sendreq.h:429]
            mca_pml_ob1_isend [pml_ob1_isend.c:87]
      Reading 4 bytes from 0x81d3038 in the heap.
      Address 0x81d3038 is 64 bytes into a malloc'd block at 0x81d2ff8 of 68 
bytes.
      This block was allocated from thread 1:
            malloc         [rtlib.o]
            mca_mpool_sm_init [mpool_sm_component.c:210]
            mca_mpool_base_module_create [mpool_base_lookup.c:90]
            sm_btl_first_time_init [btl_sm.c:219]
            mca_btl_sm_add_procs [btl_sm.c:485]
            mca_bml_r2_add_procs [bml_r2.c:206]
            mca_pml_ob1_add_procs [pml_ob1.c:310]
            ompi_mpi_init  [ompi_mpi_init.c:667]


The following 2 File Descriptors were left open, even after calling 
MPI_Finalize().
        (A)
        /dev/poll, O_RDWR
        opened from:
                open    [rtlib.o]
                devpoll_init    [devpoll.c:150]
                        if((dbfd = open("/dev/poll", O_RDWR)) == -1) {
                opal_event_base_new     [event.c:362]
                open_event_init [event.c:325]
                opal_init       [opal_init.c:359]
                orte_init       [orte_init.c:76]
                ompi_mpi_init   [ompi_mpi_init.c:342]
                MPI_Init        [pinit.c:80]


        (B)
        <unnamed socket>, O_RDWR
        _so_socket      [libc.so.1]
        _socket_create  [libsocket.so.1]
        _socketpair_create      [libsocket.so.1]
        socketpair      [libsocket.so.1]
        opal_evutil_socketpair  [evutil.c:59]
                return socketpair(family, type, protocol, fd);
        opal_evsignal_init      [signal.c:104]
        devpoll_init    [devpoll.c:185]
        opal_event_base_new     [event.c:362]

Memory leaked: 82907 bytes (24.6%); potentially leaked: 0 bytes (0%)

      Memory leaked: 82907 bytes (24.6%); potentially leaked: 0 bytes (0%)
         MLK: 58604 bytes leaked in 7 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_free_list_grow [ompi_free_list.c:188]
                      alloc_size = num_elements * head_size + 
sizeof(ompi_free_list_memory_t) +
                          flist->fl_frag_alignment;
                  
               =>     alloc_ptr = (ompi_free_list_memory_t*)malloc(alloc_size);
                  
                      if(NULL == alloc_ptr)
                          return OMPI_ERR_TEMP_OUT_OF_RESOURCE;
               mca_btl_sm_alloc [btl_sm.c:612]
               mca_bml_base_alloc [bml.h:241]
               mca_pml_ob1_send_request_start_copy [pml_ob1_sendreq.c:509]
               mca_pml_ob1_send_request_start_btl [pml_ob1_sendreq.h:363]
               mca_pml_ob1_send_request_start [pml_ob1_sendreq.h:429]
               mca_pml_ob1_isend [pml_ob1_isend.c:87]
         Block of 8372 bytes (7 times); last block at 0x84a1950
         MLK: 2160 bytes leaked at 0x820e408
         This memory was allocated from:
               malloc         [rtlib.o]
               mca_allocator_bucket_init [allocator_bucket_alloc.c:53]
                      }
                      /* initialize the array of buckets */
                      size = sizeof(mca_allocator_bucket_bucket_t) * 
num_buckets;
               =>     mem_options->buckets = (mca_allocator_bucket_bucket_t*) 
malloc(size);
                      if(NULL == mem_options->buckets) {
                          return(NULL);
                      }
               mca_allocator_bucket_module_init [allocator_bucket.c:69]
               mca_mpool_sm_init [mpool_sm_component.c:243]
               mca_mpool_base_module_create [mpool_base_lookup.c:90]
               sm_btl_first_time_init [btl_sm.c:219]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
         MLK: 2160 bytes leaked at 0x8220d30
         This memory was allocated from:
               malloc         [rtlib.o]
               mca_allocator_bucket_init [allocator_bucket_alloc.c:53]
                      }
                      /* initialize the array of buckets */
                      size = sizeof(mca_allocator_bucket_bucket_t) * 
num_buckets;
               =>     mem_options->buckets = (mca_allocator_bucket_bucket_t*) 
malloc(size);
                      if(NULL == mem_options->buckets) {
                          return(NULL);
                      }
               mca_allocator_bucket_module_init [allocator_bucket.c:69]
               mca_pml_ob1_component_open [pml_ob1_component.c:132]
               open_components [mca_base_components_open.c:362]
               mca_base_components_open [mca_base_components_open.c:213]
               mca_pml_base_open [pml_base_open.c:113]
               ompi_mpi_init  [ompi_mpi_init.c:478]
         MLK: 2160 bytes leaked at 0x81e09e8
         This memory was allocated from:
               malloc         [rtlib.o]
               mca_allocator_bucket_init [allocator_bucket_alloc.c:53]
                      }
                      /* initialize the array of buckets */
                      size = sizeof(mca_allocator_bucket_bucket_t) * 
num_buckets;
               =>     mem_options->buckets = (mca_allocator_bucket_bucket_t*) 
malloc(size);
                      if(NULL == mem_options->buckets) {
                          return(NULL);
                      }
               mca_allocator_bucket_module_init [allocator_bucket.c:69]
               mca_pml_csum_component_open [pml_csum_component.c:139]
               open_components [mca_base_components_open.c:362]
               mca_base_components_open [mca_base_components_open.c:213]
               mca_pml_base_open [pml_base_open.c:113]
               ompi_mpi_init  [ompi_mpi_init.c:478]
         MLK: 1204 bytes leaked at 0x820f178
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_free_list_grow [ompi_free_list.c:188]
                      alloc_size = num_elements * head_size + 
sizeof(ompi_free_list_memory_t) +
                          flist->fl_frag_alignment;
                  
               =>     alloc_ptr = (ompi_free_list_memory_t*)malloc(alloc_size);
                  
                      if(NULL == alloc_ptr)
                          return OMPI_ERR_TEMP_OUT_OF_RESOURCE;
               ompi_free_list_init_ex_new [ompi_free_list.c:163]
               ompi_free_list_init_new [ompi_free_list.h:173]
               sm_btl_first_time_init [btl_sm.c:339]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
         MLK: 1204 bytes leaked at 0x8218590
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_free_list_grow [ompi_free_list.c:188]
                      alloc_size = num_elements * head_size + 
sizeof(ompi_free_list_memory_t) +
                          flist->fl_frag_alignment;
                  
               =>     alloc_ptr = (ompi_free_list_memory_t*)malloc(alloc_size);
                  
                      if(NULL == alloc_ptr)
                          return OMPI_ERR_TEMP_OUT_OF_RESOURCE;
               ompi_free_list_init_ex_new [ompi_free_list.c:163]
               ompi_free_list_init_new [ompi_free_list.h:173]
               sm_btl_first_time_init [btl_sm.c:352]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
         MLK: 1072 bytes leaked at 0x81b2480
         This memory was allocated from:
               malloc         [rtlib.o]
               _nss_XbyY_buf_alloc [libc.so.1]
               get_pwbuf      [libc.so.1]
               getpwuid       [libc.so.1]
               orte_session_dir_get_name [session_dir.c:143]
               orte_session_dir [session_dir.c:390]
               orte_ess_base_app_setup [ess_base_std_app.c:131]
               rte_init       [ess_env_module.c:153]
         MLK: 1026 bytes leaked at 0x81e12d0
         This memory was allocated from:
               malloc         [rtlib.o]
               get_hostname_buffer [net.c:102]
                      if (OPAL_SUCCESS != ret) return NULL;
                  
                      if (NULL == buffer) {
               =>         buffer = (void*) malloc((NI_MAXHOST + 1) * 
sizeof(char));
                          ret = opal_tsd_setspecific(hostname_tsd_key, buffer);
                      }
                  
               opal_net_get_hostname [net.c:274]
               mca_oob_tcp_get_addr [oob_tcp.c:1485]
               orte_rml_oob_get_uri [rml_oob_contact.c:30]
               orte_routed_base_register_sync [routed_base_register_sync.c:75]
               init_routes    [routed_binomial.c:875]
               orte_ess_base_app_setup [ess_base_std_app.c:150]
         MLK: 1020 bytes leaked at 0x83f1dd8
         This memory was allocated from:
               calloc         [rtlib.o]
               ompi_ddt_create [dt_create.c:106]
                      if( expectedSize == -1 ) expectedSize = DT_INCREASE_STACK;
                      datatype->desc.length = expectedSize + 1;  /* one for the 
fake elem at the end */
                      datatype->desc.used   = 0;
               =>     datatype->desc.desc   = 
(dt_elem_desc_t*)calloc(datatype->desc.length, sizeof(dt_elem_desc_t));
                      memset( datatype->name, 0, MPI_MAX_OBJECT_NAME );
                      return datatype;
                  }
               ompi_ddt_create_struct [dt_create_struct.c:71]
               MPI_Type_create_struct [ptype_create_struct.c:79]
               MPI_Type_struct [ptype_struct.c:43]
               main           [my program]
               _start         [crt1.o]
         MLK: 940 bytes leaked at 0x8218aa0
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_free_list_grow [opal_free_list.c:95]
                  
                      alloc_ptr = (unsigned char *)malloc((num_elements * 
flist->fl_elem_size) + 
                                                          
sizeof(opal_list_item_t) +
               =>                                         CACHE_LINE_SIZE);
                      if(NULL == alloc_ptr)
                          return OPAL_ERR_TEMP_OUT_OF_RESOURCE;
                  
               opal_free_list_init [opal_free_list.c:78]
               sm_btl_first_time_init [btl_sm.c:359]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
         MLK: 832 bytes leaked at 0x83f2230
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_ddt_set_args [dt_args.c:113]
                      ompi_ddt_args_t* pArgs;
                  
                      assert( NULL == pData->args );
               =>     ALLOC_ARGS( pData, ci, ca, cd );
                  
                      pArgs = (ompi_ddt_args_t*)pData->args;
                      pArgs->create_type = type;
               MPI_Type_create_struct [ptype_create_struct.c:92]
               MPI_Type_struct [ptype_struct.c:43]
               main           [my program]
               _start         [crt1.o]
         MLK: 816 bytes leaked in 16 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               get_print_name_buffer [name_fns.c:96]
               orte_util_print_jobids [name_fns.c:169]
               orte_util_print_name_args [name_fns.c:131]
               env_set_name   [ess_env_module.c:383]
               rte_init       [ess_env_module.c:129]
               orte_init      [orte_init.c:131]
               ompi_mpi_init  [ompi_mpi_init.c:342]
         Block of 51 bytes (16 times); last block at 0x81cccf8
         MLK: 740 bytes leaked at 0x83f25d0
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_ddt_optimize_short [dt_optimize.c:88]
               ompi_ddt_commit [dt_optimize.c:306]
               MPI_Type_commit [ptype_commit.c:54]
               main           [my program]
               _start         [crt1.o]
         MLK: 692 bytes leaked at 0x81ddea0
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_free_list_grow [ompi_free_list.c:188]
               ompi_free_list_init_ex_new [ompi_free_list.c:163]
               ompi_free_list_init_new [ompi_free_list.h:173]
               mca_pml_ob1_enable [pml_ob1.c:130]
               ompi_mpi_init  [ompi_mpi_init.c:656]
               MPI_Init       [pinit.c:80]
               main           [my program]
         MLK: 672 bytes leaked in 2 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               ompi_ddt_create [dt_create.c:101]
               ompi_ddt_create_struct [dt_create_struct.c:71]
               MPI_Type_create_struct [ptype_create_struct.c:79]
               MPI_Type_struct [ptype_struct.c:43]
         Block of 336 bytes (2 times); last block at 0x83f2f38
         MLK: 564 bytes leaked in 3 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               mca_bml_r2_add_procs [bml_r2.c:224]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
         Block of 188 bytes (3 times); last block at 0x8214248
         MLK: 552 bytes leaked in 3 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               modex_lookup_orte_proc [grpcomm_base_modex.c:246]
               orte_grpcomm_base_update_modex_entries [grpcomm_base_modex.c:437]
               modex          [grpcomm_bad_module.c:565]
               ompi_mpi_init  [ompi_mpi_init.c:626]
               MPI_Init       [pinit.c:80]
         Block of 184 bytes (3 times); last block at 0x823c730
         MLK: 540 bytes leaked at 0x83f16e0
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_ddt_optimize_short [dt_optimize.c:88]
               ompi_ddt_commit [dt_optimize.c:306]
               MPI_Type_commit [ptype_commit.c:54]
               main           [my program]
               _start         [crt1.o]
         MLK: 520 bytes leaked at 0x83f3208
         This memory was allocated from:
               calloc         [rtlib.o]
               ompi_ddt_create [dt_create.c:106]
               ompi_ddt_create_struct [dt_create_struct.c:71]
               MPI_Type_create_struct [ptype_create_struct.c:79]
               MPI_Type_struct [ptype_struct.c:43]
               main           [my program]
               _start         [crt1.o]
         MLK: 512 bytes leaked at 0x81bec20
         This memory was allocated from:
               malloc         [rtlib.o]
               mca_oob_tcp_addr_insert [oob_tcp_addr.c:167]
               mca_oob_tcp_set_addr [oob_tcp.c:1635]
               orte_rml_oob_set_uri [rml_oob_contact.c:60]
               init_routes    [routed_binomial.c:842]
               orte_ess_base_app_setup [ess_base_std_app.c:150]
               rte_init       [ess_env_module.c:153]
               orte_init      [orte_init.c:131]
         MLK: 472 bytes leaked in 2 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               mca_coll_sync_comm_query [coll_sync_module.c:97]
               query_2_0_0    [coll_base_comm_select.c:377]
               query          [coll_base_comm_select.c:360]
               check_one_component [coll_base_comm_select.c:322]
               check_components [coll_base_comm_select.c:272]
         Block of 236 bytes (2 times); last block at 0x8219198
         MLK: 308 bytes leaked at 0x81c1078
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               mca_oob_tcp_component_init [oob_tcp.c:1161]
               mca_oob_base_init [oob_base_init.c:77]
               rml_oob_init   [rml_oob_component.c:132]
               orte_rml_base_select [rml_base_components.c:133]
               orte_ess_base_app_setup [ess_base_std_app.c:71]
         MLK: 280 bytes leaked at 0x81d2b90
         This memory was allocated from:
               malloc         [rtlib.o]
               dat_dictionary_create [libdat.so.1]
               dat_sr_init    [libdat.so.1]
               dat_init       [libdat.so.1]
               udat_check_state [libdat.so.1]
               dat_registry_list_providers [libdat.so.1]
               mca_btl_udapl_component_init [btl_udapl_component.c:503]
               mca_btl_base_select [btl_base_select.c:111]
         MLK: 280 bytes leaked at 0x8227c58
         This memory was allocated from:
               malloc         [rtlib.o]
               dat_dictionary_create [libdat.so.1]
               dat_sr_init    [libdat.so.1]
               dat_init       [libdat.so.1]
               udat_check_state [libdat.so.1]
               dat_registry_list_providers [libdat.so.1]
               mca_btl_udapl_component_init [btl_udapl_component.c:503]
               mca_btl_base_select [btl_base_select.c:111]
         MLK: 280 bytes leaked at 0x81d2d08
         This memory was allocated from:
               malloc         [rtlib.o]
               dat_dictionary_create [libdat.so.1]
               dat_dr_init    [libdat.so.1]
               dat_init       [libdat.so.1]
               udat_check_state [libdat.so.1]
               dat_registry_list_providers [libdat.so.1]
               mca_btl_udapl_component_init [btl_udapl_component.c:503]
               mca_btl_base_select [btl_base_select.c:111]
         MLK: 280 bytes leaked at 0x81d2e80
         This memory was allocated from:
               malloc         [rtlib.o]
               dat_dictionary_create [libdat.so.1]
               dat_dr_init    [libdat.so.1]
               dat_init       [libdat.so.1]
               udat_check_state [libdat.so.1]
               dat_registry_list_providers [libdat.so.1]
               mca_btl_udapl_component_init [btl_udapl_component.c:503]
               mca_btl_base_select [btl_base_select.c:111]
         MLK: 268 bytes leaked at 0x83f2bf0
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_ddt_set_args [dt_args.c:113]
               MPI_Type_create_struct [ptype_create_struct.c:92]
               MPI_Type_struct [ptype_struct.c:43]
               main           [my program]
               _start         [crt1.o]
         MLK: 232 bytes leaked at 0x81bc540
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               orte_rml_oob_recv_buffer_nb [rml_oob_recv.c:209]
               orte_rml_base_comm_start [rml_base_receive.c:59]
               orte_rml_oob_init [rml_oob_component.c:177]
               orte_ess_base_app_setup [ess_base_std_app.c:115]
               rte_init       [ess_env_module.c:153]
         MLK: 227 bytes leaked in 8 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               read_topic     [show_help.c:250]
               load_array     [show_help.c:279]
               opal_show_help_vstring [show_help.c:297]
               orte_show_help [show_help.c:404]
               mca_btl_base_error_no_nics [btl_base_error.c:70]
               mca_btl_udapl_component_init [btl_udapl_component.c:560]
         Block of 68 bytes at 0x8217df0
         Block of 64 bytes at 0x81de9b0
         Block of 52 bytes at 0x81deb58
         Block of 19 bytes at 0x8217fb0
         Block of 11 bytes (2 times); last block at 0x81ded20
         Block of 1 byte (2 times); last block at 0x81dec50
         MLK: 224 bytes leaked in 4 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               modex_lookup_attr_data [grpcomm_base_modex.c:215]
               orte_grpcomm_base_update_modex_entries [grpcomm_base_modex.c:492]
               modex          [grpcomm_bad_module.c:565]
               ompi_mpi_init  [ompi_mpi_init.c:626]
               MPI_Init       [pinit.c:80]
         Block of 56 bytes (4 times); last block at 0x823ca90
         MLK: 160 bytes leaked in 2 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               create_sm_endpoint [btl_sm.c:378]
               mca_btl_sm_add_procs [btl_sm.c:459]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
         Block of 80 bytes (2 times); last block at 0x823e490
         MLK: 144 bytes leaked in 3 blocks
         This memory was allocated from:
               realloc        [rtlib.o]
               mca_bml_base_btl_array_reserve [bml_base_btl.c:61]
               mca_bml_r2_add_procs [bml_r2.c:233]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
               _start         [crt1.o]
         Block of 48 bytes (3 times); last block at 0x823e2e0
         MLK: 144 bytes leaked in 3 blocks
         This memory was allocated from:
               realloc        [rtlib.o]
               mca_bml_base_btl_array_reserve [bml_base_btl.c:61]
               mca_bml_r2_add_procs [bml_r2.c:234]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
               _start         [crt1.o]
         Block of 48 bytes (3 times); last block at 0x823e370
         MLK: 144 bytes leaked in 3 blocks
         This memory was allocated from:
               realloc        [rtlib.o]
               mca_bml_base_btl_array_reserve [bml_base_btl.c:61]
               mca_bml_r2_add_procs [bml_r2.c:235]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
               _start         [crt1.o]
         Block of 48 bytes (3 times); last block at 0x823e400
         MLK: 136 bytes leaked at 0x81b8bc8
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               mca_btl_tcp_proc_create [btl_tcp_proc.c:113]
               mca_btl_tcp_proc_local [btl_tcp_proc.h:120]
               mca_btl_tcp_del_procs [btl_tcp.c:154]
               mca_bml_r2_add_procs [bml_r2.c:249]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
         MLK: 96 bytes leaked in 2 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               open_components [mca_base_components_open.c:421]
               mca_base_components_open [mca_base_components_open.c:213]
               ompi_osc_base_open [osc_base_open.c:64]
               ompi_mpi_init  [ompi_mpi_init.c:487]
               MPI_Init       [pinit.c:80]
         Block of 48 bytes (2 times); last block at 0x81d4b40
         MLK: 76 bytes leaked in 4 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               orte_grpcomm_base_update_modex_entries [grpcomm_base_modex.c:473]
               modex          [grpcomm_bad_module.c:565]
               ompi_mpi_init  [ompi_mpi_init.c:626]
               MPI_Init       [pinit.c:80]
               main           [my program]
               _start         [crt1.o]
         Block of 24 bytes (3 times); last block at 0x823fec8
         Block of 4 bytes at 0x823ca30
         MLK: 72 bytes leaked at 0x81b2280
         This memory was allocated from:
               malloc         [rtlib.o]
               rml_oob_init   [rml_oob_component.c:143]
               orte_rml_base_select [rml_base_components.c:133]
               orte_ess_base_app_setup [ess_base_std_app.c:71]
               rte_init       [ess_env_module.c:153]
               orte_init      [orte_init.c:131]
               ompi_mpi_init  [ompi_mpi_init.c:342]
               MPI_Init       [pinit.c:80]
         MLK: 68 bytes leaked at 0x81d2ff8
         This memory was allocated from:
               malloc         [rtlib.o]
               mca_mpool_sm_init [mpool_sm_component.c:210]
               mca_mpool_base_module_create [mpool_base_lookup.c:90]
               sm_btl_first_time_init [btl_sm.c:219]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
         MLK: 68 bytes leaked at 0x81a3120
         This memory was allocated from:
               malloc         [rtlib.o]
               get_print_name_buffer [name_fns.c:94]
               orte_util_print_jobids [name_fns.c:169]
               orte_util_print_name_args [name_fns.c:131]
               env_set_name   [ess_env_module.c:383]
               rte_init       [ess_env_module.c:129]
               orte_init      [orte_init.c:131]
               ompi_mpi_init  [ompi_mpi_init.c:342]
         MLK: 52 bytes leaked at 0x8228668
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               ompi_attr_create_keyval [attribute.c:546]
               create_comm    [attribute_predefined.c:226]
               ompi_attr_create_predefined [attribute_predefined.c:138]
               ompi_attr_init [attribute.c:505]
               ompi_mpi_init  [ompi_mpi_init.c:608]
         MLK: 52 bytes leaked at 0x823eb48
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               ompi_attr_create_keyval [attribute.c:546]
               create_comm    [attribute_predefined.c:226]
               ompi_attr_create_predefined [attribute_predefined.c:138]
               ompi_attr_init [attribute.c:505]
               ompi_mpi_init  [ompi_mpi_init.c:608]
         MLK: 52 bytes leaked at 0x81b6108
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               mca_oob_tcp_set_addr [oob_tcp.c:1630]
               orte_rml_oob_set_uri [rml_oob_contact.c:60]
               init_routes    [routed_binomial.c:842]
               orte_ess_base_app_setup [ess_base_std_app.c:150]
               rte_init       [ess_env_module.c:153]
         MLK: 52 bytes leaked at 0x8228428
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               ompi_attr_create_keyval [attribute.c:546]
               create_comm    [attribute_predefined.c:226]
               ompi_attr_create_predefined [attribute_predefined.c:138]
               ompi_attr_init [attribute.c:505]
               ompi_mpi_init  [ompi_mpi_init.c:608]
         MLK: 52 bytes leaked at 0x823ec68
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               ompi_attr_create_keyval [attribute.c:546]
               create_comm    [attribute_predefined.c:226]
               ompi_attr_create_predefined [attribute_predefined.c:138]
               ompi_attr_init [attribute.c:505]
               ompi_mpi_init  [ompi_mpi_init.c:608]
         MLK: 52 bytes leaked at 0x8227248
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               ompi_attr_create_keyval [attribute.c:546]
               create_comm    [attribute_predefined.c:226]
               ompi_attr_create_predefined [attribute_predefined.c:138]
               ompi_attr_init [attribute.c:505]
               ompi_mpi_init  [ompi_mpi_init.c:608]
         MLK: 52 bytes leaked at 0x8228548
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               ompi_attr_create_keyval [attribute.c:546]
               create_comm    [attribute_predefined.c:226]
               ompi_attr_create_predefined [attribute_predefined.c:138]
               ompi_attr_init [attribute.c:505]
               ompi_mpi_init  [ompi_mpi_init.c:608]
         MLK: 52 bytes leaked at 0x823ed88
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               ompi_attr_create_keyval [attribute.c:546]
               create_comm    [attribute_predefined.c:226]
               ompi_attr_create_predefined [attribute_predefined.c:138]
               ompi_attr_init [attribute.c:505]
               ompi_mpi_init  [ompi_mpi_init.c:608]
         MLK: 49 bytes leaked in 4 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_dss_unpack_string [dss_unpack.c:381]
               opal_dss_unpack_buffer [dss_unpack.c:119]
               opal_dss_unpack [dss_unpack.c:83]
               orte_grpcomm_base_update_modex_entries [grpcomm_base_modex.c:462]
               modex          [grpcomm_bad_module.c:565]
               ompi_mpi_init  [ompi_mpi_init.c:626]
               MPI_Init       [pinit.c:80]
         Block of 13 bytes at 0x823c9c0
         Block of 12 bytes (3 times); last block at 0x82176f0
         MLK: 49 bytes leaked in 4 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               modex_lookup_attr_data [grpcomm_base_modex.c:218]
               orte_grpcomm_base_update_modex_entries [grpcomm_base_modex.c:492]
               modex          [grpcomm_bad_module.c:565]
               ompi_mpi_init  [ompi_mpi_init.c:626]
               MPI_Init       [pinit.c:80]
               main           [my program]
         Block of 13 bytes at 0x823cb28
         Block of 12 bytes (3 times); last block at 0x823c608
         MLK: 48 bytes leaked in 2 blocks
         This memory was allocated from:
               malloc         [rtlib.o]
               orte_grpcomm_base_get_proc_attr [grpcomm_base_modex.c:357]
               ompi_modex_recv [ompi_module_exchange.c:63]
               mca_btl_tcp_proc_create [btl_tcp_proc.c:128]
               mca_btl_tcp_add_procs [btl_tcp.c:101]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
         Block of 24 bytes (2 times); last block at 0x81b7e88
         MLK: 48 bytes leaked at 0x8214cd8
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               open_components [mca_base_components_open.c:421]
               mca_base_components_open [mca_base_components_open.c:213]
               mca_btl_base_open [btl_base_open.c:118]
               mca_bml_base_open [bml_base_open.c:81]
               mca_pml_csum_component_open [pml_csum_component.c:145]
         MLK: 48 bytes leaked at 0x8210ee8
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_obj_new   [opal_object.h:468]
               opal_obj_new_debug [opal_object.h:247]
               open_components [mca_base_components_open.c:421]
               mca_base_components_open [mca_base_components_open.c:213]
               mca_bml_base_open [bml_base_open.c:44]
               mca_pml_csum_component_open [pml_csum_component.c:145]
               open_components [mca_base_components_open.c:362]
         MLK: 40 bytes leaked at 0x81def38
         This memory was allocated from:
               malloc         [rtlib.o]
               mca_allocator_bucket_module_init [allocator_bucket.c:62]
               mca_mpool_sm_init [mpool_sm_component.c:243]
               mca_mpool_base_module_create [mpool_base_lookup.c:90]
               sm_btl_first_time_init [btl_sm.c:219]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
         MLK: 40 bytes leaked at 0x8211500
         This memory was allocated from:
               malloc         [rtlib.o]
               mca_allocator_bucket_module_init [allocator_bucket.c:62]
               mca_pml_csum_component_open [pml_csum_component.c:139]
               open_components [mca_base_components_open.c:362]
               mca_base_components_open [mca_base_components_open.c:213]
               mca_pml_base_open [pml_base_open.c:113]
               ompi_mpi_init  [ompi_mpi_init.c:478]
               MPI_Init       [pinit.c:80]
         MLK: 24 bytes leaked at 0x81edbd8
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               param_register [mca_base_param.c:1545]
               mca_base_param_reg_string [mca_base_param.c:374]
               sm_open        [coll_sm_component.c:165]
         MLK: 24 bytes leaked at 0x81cf860
         This memory was allocated from:
               malloc         [rtlib.o]
               orte_grpcomm_base_get_proc_attr [grpcomm_base_modex.c:357]
               ompi_modex_recv [ompi_module_exchange.c:63]
               mca_btl_tcp_proc_create [btl_tcp_proc.c:128]
               mca_btl_tcp_proc_local [btl_tcp_proc.h:120]
               mca_btl_tcp_del_procs [btl_tcp.c:154]
               mca_bml_r2_add_procs [bml_r2.c:249]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
         MLK: 16 bytes leaked at 0x81a8228
         This memory was allocated from:
               malloc         [rtlib.o]
               orte_rml_oob_recv_buffer_nb [rml_oob_recv.c:212]
               orte_rml_base_comm_start [rml_base_receive.c:59]
               orte_rml_oob_init [rml_oob_component.c:177]
               orte_ess_base_app_setup [ess_base_std_app.c:115]
               rte_init       [ess_env_module.c:153]
               orte_init      [orte_init.c:131]
               ompi_mpi_init  [ompi_mpi_init.c:342]
         MLK: 12 bytes leaked at 0x81decb0
         This memory was allocated from:
               malloc         [rtlib.o]
               sm_btl_first_time_init [btl_sm.c:316]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
         MLK: 12 bytes leaked at 0x84bfde8
         This memory was allocated from:
               malloc         [rtlib.o]
               ompi_proc_all  [proc.c:272]
               mca_bml_r2_finalize [bml_r2.c:609]
               mca_pml_ob1_component_fini [pml_ob1_component.c:187]
               mca_pml_base_finalize [pml_base_close.c:34]
               ompi_mpi_finalize [ompi_mpi_finalize.c:196]
               MPI_Finalize   [pfinalize.c:44]
               main           [my program]
         MLK: 12 bytes leaked at 0x82278d0
         This memory was allocated from:
               malloc         [rtlib.o]
               dat_dictionary_create [libdat.so.1]
               dat_sr_init    [libdat.so.1]
               dat_init       [libdat.so.1]
               udat_check_state [libdat.so.1]
               dat_registry_list_providers [libdat.so.1]
               mca_btl_udapl_component_init [btl_udapl_component.c:503]
               mca_btl_base_select [btl_base_select.c:111]
         MLK: 12 bytes leaked at 0x81debe8
         This memory was allocated from:
               calloc         [rtlib.o]
               sm_btl_first_time_init [btl_sm.c:233]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
         MLK: 12 bytes leaked at 0x81dea50
         This memory was allocated from:
               calloc         [rtlib.o]
               sm_btl_first_time_init [btl_sm.c:239]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
         MLK: 12 bytes leaked at 0x81f1688
         This memory was allocated from:
               malloc         [rtlib.o]
               dat_dictionary_create [libdat.so.1]
               dat_dr_init    [libdat.so.1]
               dat_init       [libdat.so.1]
               udat_check_state [libdat.so.1]
               dat_registry_list_providers [libdat.so.1]
               mca_btl_udapl_component_init [btl_udapl_component.c:503]
               mca_btl_base_select [btl_base_select.c:111]
         MLK: 8 bytes leaked at 0x81b29f8
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_dss_unpack_byte_object [dss_unpack.c:489]
               opal_dss_unpack_buffer [dss_unpack.c:119]
               opal_dss_unpack [dss_unpack.c:83]
               orte_ess_base_build_nidmap [ess_base_nidmap.c:56]
               rte_init       [ess_env_module.c:172]
               orte_init      [orte_init.c:131]
               ompi_mpi_init  [ompi_mpi_init.c:342]
         MLK: 8 bytes leaked at 0x82015e0
         This memory was allocated from:
               malloc         [rtlib.o]
               mca_btl_tcp_proc_create [btl_tcp_proc.c:144]
               mca_btl_tcp_proc_local [btl_tcp_proc.h:120]
               mca_btl_tcp_del_procs [btl_tcp.c:154]
               mca_bml_r2_add_procs [bml_r2.c:249]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
         MLK: 8 bytes leaked at 0x81bcee8
         This memory was allocated from:
               malloc         [rtlib.o]
               opal_dss_unpack_byte_object [dss_unpack.c:489]
               opal_dss_unpack_buffer [dss_unpack.c:119]
               opal_dss_unpack [dss_unpack.c:83]
               orte_ess_base_build_nidmap [ess_base_nidmap.c:69]
               rte_init       [ess_env_module.c:172]
               orte_init      [orte_init.c:131]
               ompi_mpi_init  [ompi_mpi_init.c:342]
         MLK: 7 bytes leaked at 0x8220c40
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               param_register [mca_base_param.c:1545]
               mca_base_param_reg_string [mca_base_param.c:374]
               mca_pml_ob1_component_open [pml_ob1_component.c:123]
         MLK: 7 bytes leaked at 0x81f0630
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               mca_base_param_lookup_string [mca_base_param.c:535]
               mca_pml_v_param_register_string [pml_v_component.c:257]
               mca_pml_v_component_open [pml_v_component.c:71]
         MLK: 6 bytes leaked at 0x81d9e50
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               param_register [mca_base_param.c:1545]
               mca_base_param_reg_string [mca_base_param.c:374]
               mca_oob_tcp_component_open [oob_tcp.c:314]
         MLK: 6 bytes leaked at 0x81deab8
         This memory was allocated from:
               malloc         [rtlib.o]
               sm_btl_first_time_init [btl_sm.c:323]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
         MLK: 5 bytes leaked at 0x81dbd18
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               param_register [mca_base_param.c:1545]
               mca_base_param_reg_string [mca_base_param.c:374]
               mca_btl_udapl_reg_string [btl_udapl_mca.c:48]
         MLK: 5 bytes leaked at 0x81c1398
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               orte_session_dir_get_name [session_dir.c:332]
               orte_session_dir [session_dir.c:390]
               orte_ess_base_app_setup [ess_base_std_app.c:131]
               rte_init       [ess_env_module.c:153]
               orte_init      [orte_init.c:131]
               ompi_mpi_init  [ompi_mpi_init.c:342]
         MLK: 4 bytes leaked at 0x81fd458
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               mca_pml_base_open [pml_base_open.c:143]
               ompi_mpi_init  [ompi_mpi_init.c:478]
               MPI_Init       [pinit.c:80]
               main           [my program]
               _start         [crt1.o]
         MLK: 4 bytes leaked at 0x81a6e30
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               mca_base_param_set_string [mca_base_param.c:551]
               ompi_mpi_init  [ompi_mpi_init.c:322]
               MPI_Init       [pinit.c:80]
               main           [my program]
               _start         [crt1.o]
         MLK: 4 bytes leaked at 0x81ba4d8
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               param_register [mca_base_param.c:1545]
               mca_base_param_reg_string [mca_base_param.c:374]
               mca_mpool_rdma_open [mpool_rdma_component.c:75]
         MLK: 4 bytes leaked at 0x8227dd0
         This memory was allocated from:
               calloc         [rtlib.o]
               sm_btl_first_time_init [btl_sm.c:185]
               mca_btl_sm_add_procs [btl_sm.c:485]
               mca_bml_r2_add_procs [bml_r2.c:206]
               mca_pml_ob1_add_procs [pml_ob1.c:310]
               ompi_mpi_init  [ompi_mpi_init.c:667]
               MPI_Init       [pinit.c:80]
               main           [my program]
         MLK: 3 bytes leaked at 0x81ee688
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               mca_pml_base_open [pml_base_open.c:144]
               ompi_mpi_init  [ompi_mpi_init.c:478]
               MPI_Init       [pinit.c:80]
               main           [my program]
               _start         [crt1.o]
         MLK: 3 bytes leaked at 0x81be2c0
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               mca_base_param_lookup_string [mca_base_param.c:535]
               mca_btl_sm_param_register_string [btl_sm_component.c:102]
               mca_btl_sm_component_open [btl_sm_component.c:134]
         MLK: 1 byte leaked at 0x81be028
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               param_register [mca_base_param.c:1545]
               mca_base_param_reg_string_name [mca_base_param.c:406]
               mca_pml_v_component_open [pml_v_component.c:76]
         MLK: 1 byte leaked at 0x81fd3f8
         This memory was allocated from:
               malloc         [rtlib.o]
               strdup         [libc.so.1]
               set            [mca_base_param.c:2037]
               lookup_default [mca_base_param.c:2023]
               param_lookup   [mca_base_param.c:1770]
               param_register [mca_base_param.c:1521]
               mca_base_param_reg_string_name [mca_base_param.c:406]
               mca_pml_base_open [pml_base_open.c:140]
         Purify Heap Analysis (combining suppressed and unsuppressed blocks)

Reply via email to