split_all#

caput.util.mpitools.split_all(n: int, comm: mpi4py.MPI.Comm | None = _comm) numpy.ndarray[source]#

Split a range of integers [0, n) into sub-ranges for each MPI Process.

Parameters:
nint

Length of range to split.

commMPI.Comm | None, optional

MPI Communicator to use (default COMM_WORLD).

Returns:
splitndarray

Array of shape (3, …) with rows corresponding to:

  • Number for each rank.

  • Starting of each sub-range on a given rank.

  • End of each sub-range.