Hi, I'm trying to solve a memory leak since my new implementation of communications based on MPI_AllToAllW and MPI_type_Create_SubArray calls. Arrays of SubArray types are created/destroyed at each time step and used for communications.
On my laptop the code runs fine (running for 15000 temporal itérations on 32 processes with oversubscription) but on our cluster memory used by the code increase until the OOMkiller stop the job. On the cluster we use IB QDR for communications. Same Gcc/Gfortran 7.3 (built from sources), same sources of OpenMPI (3.1 or 4.0.5 tested), same sources of the fortran code on the laptop and on the cluster. Using Gcc/Gfortran 4.8 and OpenMPI 1.7.3 on the cluster do not show the problem (resident memory do not increase and we ran 100000 temporal iterations) MPI_type_free manual says that it "/Marks the datatype object associated with datatype for deallocation/". But how can I check that the deallocation is really done ? Thanks for ant suggestions. Patrick