Skip to content
Snippets Groups Projects
Unverified Commit 8bf65cdd authored by Thorsten Hater's avatar Thorsten Hater Committed by GitHub
Browse files

Elaborate on mpi4py. (#1940)

parent 74ccde24
No related branches found
No related tags found
No related merge requests found
...@@ -91,8 +91,9 @@ The following flags can be used to configure the installation: ...@@ -91,8 +91,9 @@ The following flags can be used to configure the installation:
* ``ARB_WITH_NEUROML=<ON|OFF>``: Enable support for NeuroML2 morphologies, * ``ARB_WITH_NEUROML=<ON|OFF>``: Enable support for NeuroML2 morphologies,
requires ``libxml2`` library. Default ``OFF`` requires ``libxml2`` library. Default ``OFF``
* ``ARB_WITH_MPI=<ON|OFF>``: Enable MPI support, requires MPI library. * ``ARB_WITH_MPI=<ON|OFF>``: Enable MPI support, requires MPI library. Default
Default ``OFF``. ``OFF``. If you intend to use ``mpi4py``, you need to install the package before
building Arbor, as binding it requires access to its headers.
* ``ARB_GPU=<none|cuda|cuda-clang|hip>``: Enable GPU support for NVIDIA GPUs * ``ARB_GPU=<none|cuda|cuda-clang|hip>``: Enable GPU support for NVIDIA GPUs
with nvcc using ``cuda``, or with clang using ``cuda-clang`` (both require with nvcc using ``cuda``, or with clang using ``cuda-clang`` (both require
cudaruntime). Enable GPU support for AMD GPUs with hipcc using ``hip``. By cudaruntime). Enable GPU support for AMD GPUs with hipcc using ``hip``. By
......
...@@ -161,7 +161,12 @@ void register_contexts(pybind11::module& m) { ...@@ -161,7 +161,12 @@ void register_contexts(pybind11::module& m) {
throw pyarb_error("Attempt to set an MPI communicator but Arbor is not configured with MPI support."); throw pyarb_error("Attempt to set an MPI communicator but Arbor is not configured with MPI support.");
} }
#else #else
const char* mpi_err_str = "mpi must be None, or an MPI communicator"; const char* mpi_err_str = "mpi must be None, or a known MPI communicator type. Supported MPI implementations = native"
#ifdef ARB_WITH_MPI4PY
", mpi4py.";
#else
". Consider installing mpi4py and rebuilding Arbor.";
#endif
if (can_convert_to_mpi_comm(mpi)) { if (can_convert_to_mpi_comm(mpi)) {
return context_shim(arb::make_context(a, convert_to_mpi_comm(mpi))); return context_shim(arb::make_context(a, convert_to_mpi_comm(mpi)));
} }
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment