[petsc-dev] threadcomm memory leak

Barry Smith bsmith at mcs.anl.gov
Mon Jul 16 17:32:26 CDT 2012


On Jul 16, 2012, at 11:25 AM, Satish Balay wrote:

> Thats was almost 15 years ago :) from the time we used RCS - and
> didn't maintain commit messages.
> 
> I think its probably more because mpiuni doesn't support more than 1
> communicator and attributes are stashed in a global structure [not per
> communicator].
> 
    Why shouldn't they be the same?  Everything should still work fine. Where in PETSc do we make the assumption MPI_COMM_SELF is not MPI_COMM_WORLD and why? Except for Shi's new stuff and the new elemental stuff everything else in PETSc has worked fine with them being the same for 15 years. Hence the problem is likely with Shri's and Hong's interactions with MPI; not with the current MPIUNI.

    Barry

> Perhaps mpiuni needs fixing..
> 
> Satish
> 
> 
> On Mon, 16 Jul 2012, Jed Brown wrote:
> 
>> Satish, what was the rationale behind this commit? I can't think of an
>> excuse for making them be literally the same.
>> 
>> On Mon, Jul 16, 2012 at 11:11 AM, Satish Balay <balay at mcs.anl.gov> wrote:
>> 
>>> Actually for np=1 MPI_COMM_SELF==MPI_COMM_WORLD.
>>> 
>>> mpi.h was changed to reflect this  - but mpif.h was not.
>>> 
>>> Satish
>>> 
>>> ----------
>>> balay at petsc:~/Petsc-historic/src/sys/src/mpiuni $ rcsdiff -r1.52 -r1.53
>>> mpi.h
>>> ===================================================================
>>> RCS file: RCS/mpi.h,v
>>> retrieving revision 1.52
>>> retrieving revision 1.53
>>> diff -r1.52 -r1.53
>>> 1c1
>>> < /* $Id: mpi.h,v 1.52 1997/07/28 21:41:02 balay Exp $ */
>>> ---
>>>> /* $Id: mpi.h,v 1.53 1997/08/21 01:06:19 balay Exp $ */
>>> 22c22
>>> < #define MPI_COMM_SELF        2
>>> ---
>>>> #define MPI_COMM_SELF        MPI_COMM_WORLD
>>> 427c427
>>> <                       (MPIUNI_TMP = (void *) (comm), \
>>> ---
>>>>                      (*(newcomm) =  (comm), \
>>> 429d428
>>> <                       MPIUNI_TMP = (void *) (newcomm), \
>>> 
>> 
> 




More information about the petsc-dev mailing list