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

working with large mesh

0 votes

Are there any limits on the size of the mesh FEniCs can deal with? I receive an error when trying to solve a 3 dimensional elasticity problem using the mesh ~ 16000000 vertices.

asked Mar 9, 2016 by mptashnyk FEniCS Novice (300 points)

1 Answer

+1 vote
 
Best answer

Maybe you are out of memory? DOLFIN should be able to cope with very large meshes, up to 2 billion per node at least, 16 million is not too big.
Memory usage can grow enormously for hard 3D problems, such as elasticity, and the mesh
is probably not the biggest consumer of memory, but the assembled matrix and the solver probably use much more.
You may need to run in parallel, on a distributed memory machine for really big problems.
We have tested up to 12 billion nodes in parallel.

answered Mar 9, 2016 by chris_richardson FEniCS Expert (31,740 points)
selected Mar 9, 2016 by mptashnyk

Thanks a lot for the answer. It may be that I am going something wrong. My program has the problem to read the mesh from xdmf file, before even assembling the matrix. I am using 14 processors and 128 GB RAM.

Hi Chris, do you think that 128 GB RAM and 14 processor are not sufficient for DOLFIN to process a mesh with 16 million nodes? Or I am missing something in my code? The code is working with a mesh up to ~ 8 million nodes.
Thanks a lot for the help. Mariya.

If you have an error reading the mesh, please post the error message.

Thanks for your comment.
Here is the error message, when I try to use larger (more than 16 million nodes in 3D) mesh:

HDF5-DIAG: Error detected in HDF5 (1.8.11) MPI-process 5:
#000: ../../../src/H5F.c line 1586 in H5Fopen(): unable to open file
major: File accessibilty
minor: Unable to open file
#001: ../../../src/H5F.c line 1377 in H5F_open(): unable to read superblock
major: File accessibilty
minor: Read failed
#002: ../../../src/H5Fsuper.c line 334 in H5F_super_read(): unable to find file signature
major: File accessibilty
minor: Not an HDF5 file
#003: ../../../src/H5Fsuper.c line 155 in H5F_locate_signature(): unable to find a valid file signature
major: Low-level I/O
minor: Unable to initialise object

Just to add that files with such large mesh I can not safe as xml.gz anymore and safe only as xdmf file.
Thanks a lot for your help.

...