[petsc-users] DM misuse causes massive memory leak?

Jeremy Theler jeremy at seamplex.com
Thu Dec 30 07:05:50 CST 2021


Hola Jesús

You were lucky you got 20x. See

https://petsc.org/release/docs/manualpages/Mat/MatSeqAIJSetPreallocation.html
https://petsc.org/release/docs/manualpages/Mat/MatMPIAIJSetPreallocation.html

Quote:

"For large problems you MUST preallocate memory or you will get
TERRIBLE performance, see the users' manual chapter on matrices. "

--
jeremy


On Wed, 2021-12-29 at 22:12 +0000, Ferrand, Jesus A. wrote:
> Dear PETSc Team:
> 
> I have a question about DM andPetscSection. Say I import a mesh (for
> FEM purposes) and create aDMPlex for it. I then usePetscSections to
> set degrees of freedom per "point" (by point I mean vertices, lines,
> faces, and cells). I then usePetscSectionGetStorageSize() to get the
> size of the global stiffness matrix (K) needed for my FEM problem.
> One last detail, this K I populate inside a rather large loop using
> an element stiffness matrix function of my own. Instead of
> usingDMCreateMatrix(), I manually created aMat using MatCreate(),
> MatSetType(),MatSetSizes(), and MatSetUp(). I come to find that said
> loop is painfully slow when I use the manually created matrix, but
> 20x faster when I use the Mat coming out ofDMCreateMatrix().
> 
> My question is then: Is the manual Mat a noob mistake and is it
> somehow creating a memory leak with K? Just in case it's something
> else I'm attaching the code. The loop that populates K is between
> lines 221 and 278. Anything related to DM, DMPlex, and PetscSection
> is between lines 117 and 180.
> 
> Machine Type: HP Laptop
> C-compiler: Gnu C
> OS: Ubuntu 20.04
> PETSc version: 3.16.0
> MPI Implementation: MPICH
> 
> Hope you all had a Merry Christmas and that you will have a happy and
> productive New Year. :D
> 
> Sincerely:
> J.A. Ferrand
> Embry-Riddle Aeronautical University - Daytona Beach FL
> M.Sc. Aerospace Engineering | May 2022
> B.Sc. Aerospace Engineering
> B.Sc. Computational Mathematics
>  
> Sigma Gamma Tau 
> Tau Beta Pi
> Honors Program
>  
> Phone: (386)-843-1829
> Email(s): ferranj2 at my.erau.edu
>    jesus.ferrand at gmail.com




More information about the petsc-users mailing list