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

Parallel implementation of FEniCS

+4 votes

Hi,

Does FEniCS allow me to control which components of my code are executed in parallel and which aren't?

For example, sometimes it would be beneficial for me to use multiple cores to solve a finite element problem in parallel, and in other areas of the same script it would be beneficial to assign a different finite element problem to each core, and solve them simultaneously.

[edit] - I have found two possibly relevant python modules: multiprocessing and thread, which allow me to build and isolate processes.

asked Apr 16, 2014 by sixtysymbols FEniCS User (2,280 points)
edited Apr 16, 2014 by sixtysymbols

Thanks. I have also discovered that dolfin supports MPI manipulation via the object MPI.

http://fenicsproject.org/documentation/dolfin/1.0.1/python/programmers-reference/cpp/MPI.html

1 Answer

+3 votes
 
Best answer

Support for varying the number of processes is very limited at present. This is currently being changed. Many objects now accept an MPI communicator as an argument.

answered Apr 23, 2014 by Garth N. Wells FEniCS Expert (35,930 points)
selected Apr 23, 2014 by sixtysymbols
...