OpenMPI

From relax wiki
Jump to navigation Jump to search

OpenMPI / mpi4py

Manual on Multi processor usage

If you have OpenMPI and mpi4py installed, then you have access to Gary Thompson's multi-processor framework for MPI parallelisation.

However the code in relax must be written to support this. This is the case for the model-free analysis, in which case Gary has achieved near perfect scaling efficiency:

https://mail.gna.org/public/relax-devel/2007-05/msg00000.html

For the relaxation dispersion branch, no parallelisation has been attempted, neither in the original code from Sebastian Morin or the recent modifications by myself. This is not a simple task and will take a lot of effort to implement. If this is to be implemented one day, it is suggested parallelising at the level of the spin clusters.

It is often quite hard to achieve good scaling efficiency and often the first attempts will just make the code slower, even on a 1024 node cluster, due to the bottleneck of data transfer between the nodes.

The parallelisation will also require 10 times as much code to be written to do the same thing as non-parallised code, and debugging is much more difficult.


See also