quinoa
quinoa copied to clipboard
Explore build without MPI
There are multiple aspects/variations of this:
-
[x] Using MPI third-party libraries possibly without MPI (e.g., OpenMPI, etc.) but with Charm++'s AMPI. Not sure if this is possible but, after consulting with Charm++ developers, there appears no real problem with it in theory. See also https://lists.cs.illinois.edu/lists/arc/charm/2016-03/msg00049.html. (Update: we can now build all TPLs on top of AMPI.)
-
[ ] Another interesting way to use "MPI without MPI" is to rely on AMPI as in the first bullet above, and use AMPI's over-decomposition and thread migration to improve the performance of the MPI-only libraries. Hypre should be a good candidate to try this as that is known to run fine on top of AMPI without any performance hit.
-
[ ] There may also be a way to not have to build Charm++ on top of MPI and still be able to use MPI-only libraries. This should work on BG/Q and Cray.
-
[x] Not using the MPI wrappers for the build, but let cmake pick up whatever it finds as default system-wide. This already works fine, see d4add0a.