hoomd.communicator¶
Overview
MPI communicator |
Details
MPI communication interface
Use methods in this module to query the number of MPI ranks, the current rank, etc…
-
class
hoomd.communicator.
Communicator
(mpi_comm=None, nrank=None)¶ MPI communicator
- Parameters
mpi_comm – Accepts an mpi4py communicator. Use this argument to perform many independent hoomd simulations where you communicate between those simulations using your own mpi4py code.
nrank (int) – (MPI) Number of ranks to include in a partition
-
barrier
()¶ Perform a MPI barrier synchronization across all ranks in the partition.
Note
Does nothing in in non-MPI builds.
-
barrier_all
()¶ Perform a MPI barrier synchronization across the whole MPI run.
Note
Does nothing in in non-MPI builds.
-
localize_abort
()¶ Localize MPI_Abort to this partition.
HOOMD calls MPI_Abort to tear down all running MPI processes whenever there is an uncaught exception. By default, this will abort the entire MPI execution. When using partitions (
nrank is not None
), an uncaught exception on one partition will therefore abort all of them.Use the return value of
localize_abort()
as a context manager to tell HOOMD that all operations within the context will use only that MPI communicator so that an uncaught exception in one partition will only abort that partition and leave the others running.
-
property
num_ranks
¶ Get the number of ranks in this partition.
- Returns
The number of MPI ranks in this partition.
Note
Returns 1 in non-mpi builds.
-
property
partition
¶ Get the current partition index.
- Returns
Index of the current partition.
Note
Always returns 0 in non-mpi builds.
-
property
rank
¶ Get the current rank.
- Returns
Index of the current rank in this partition.
Note
Always returns 0 in non-mpi builds.