This is a read only copy of the old FEniCS QA forum. Please visit the new QA forum to ask questions

strange 'out of memory' problem in FEniCS

+1 vote

I develop my own FEM codes on top of FEniCS, when the total number of dofs is approximately more than 10,000, it crashes and shows the following 'out of memory' error. It seems like to happen at LUSolver. Although LU solver has more memory requirement, the dofs is far less than that big. I also use "top" command to monitor the MEM condition. It shows the memory used in my workstation is only less than 5%. It is strange to me that the out of memory error occurs. Anyone has ideas? Thanks.

My problem is nonlinear, I use dolfin's NewtonSolver("LU").


UMFPACK V5.4.0 (May 20, 2009): ERROR: out of memory

[0]PETSC ERROR: --------------------- Error Message ------------------------------------
[0]PETSC ERROR: Error in external library!
[0]PETSC ERROR: umfpack_UMF_numeric failed!
[0]PETSC ERROR: ------------------------------------------------------------------------
[0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 5, Sat Oct 29 13:45:54 CDT 2011
[0]PETSC ERROR: See docs/changes/index.html for recent updates.
[0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
[0]PETSC ERROR: See docs/index.html for manual pages.
[0]PETSC ERROR: ----------------------------------------------------------------
[0]PETSC ERROR: Unknown Name on a linux-gnu named thanasis by xzh705 Fri Nov 8
[0]PETSC ERROR: Libraries linked from /build/buildd/petsc-3.2.dfsg/linux-gnu-c-o
[0]PETSC ERROR: Configure run at Tue Dec 4 18:27:39 2012
[0]PETSC ERROR: Configure options --with-shared-libraries --with-debugging=0 --ulacs=1 --with-blacs-include=/usr/include --with-blacs-lib="[/usr/lib/libblacsCinude=/usr/include --with-mumps-lib="[/usr/lib/libdmumps.so,/usr/lib/libzmumps.so,/libumfpack.so,/usr/lib/libamd.so]" --with-cholmod=1 --with-cholmod-include=/usrhypre-dir=/usr --with-ptscotch=1 --with-ptscotch-include=/usr/include/scotch --w
[0]PETSC ERROR: ----------------------------------------------------------------
[0]PETSC ERROR: MatLUFactorNumeric_UMFPACK() line 204 in src/mat/impls/aij/seq/u
[0]PETSC ERROR: MatLUFactorNumeric() line 2876 in src/mat/interface/matrix.c
[0]PETSC ERROR: PCSetUp_LU() line 160 in src/ksp/pc/impls/factor/lu/lu.c
[0]PETSC ERROR: PCSetUp() line 819 in src/ksp/pc/interface/precon.c
[0]PETSC ERROR: KSPSetUp() line 260 in src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: KSPSolve() line 379 in src/ksp/ksp/interface/itfunc.c

asked Nov 9, 2013 by xzhao99 FEniCS Novice (270 points)

1 Answer

+2 votes

Someone correct me if I'm wrong but I think this is a UMFPACK issue (I used to observe the same error). It seems to be memory-limited. Change the direct solver to MUMPS and the problem should disappear.

answered Nov 9, 2013 by Theodore FEniCS Novice (780 points)

Thank you for your answer. Could you tell me how to change the direct solver in FEniCS/dolfin? It seems FEniCS support different 'backend' which include PETSc, STL and uBLAS. Does one of them has MUMPS solver? Thanks.

XZ

PETSc can be compiled with MUMPS, SuperLU.

...