Brad: You must call MatDestroySubMatrices(), not MatDestroyMatrices(). See petsc/src/mat/examples/tests/ex54.c
I'll add it to the help menu of MatCreateSubMatrices(). Hong > > > In PyLith we call MatCreateSubMatrices() and MatDestroyMatrices() with > potentially different numbers of submatrices on each process. If each > process has a nonzero number of submatrices things appear to be working > fine. If a process has zero submatrices, I am getting a memory leak on that > process (as reported by -malloc_dump). I did not get this behavior with > PETSc 3.7.2 and earlier with MatGetSubMatrices() and MatDestroyMatrices(). > > Do I need to do something special when calling MatCreateSubMatrices() or > MatDestroyMatrices() when the number of submatrices on a process is zero? > > The log with the petsc log summary and malloc dump output is attached. > > Thanks, > Brad > > >
