MPI Dialect
Refer to the official documentation for more details.
Reactant.MLIR.Dialects.mpi.allreduce Method
allreduce
MPI_Allreduce performs a reduction operation on the values in the sendbuf array and stores the result in the recvbuf array. The operation is performed across all processes in the communicator.
The op
attribute specifies the reduction operation to be performed. Currently only the MPI_Op
predefined in the standard (e.g. MPI_SUM
) are supported.
Communicators other than MPI_COMM_WORLD
are not supported for now.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.barrier Method
barrier
MPI_Barrier blocks execution until all processes in the communicator have reached this routine.
Communicators other than MPI_COMM_WORLD
are not supported for now.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.comm_rank Method
comm_rank
Communicators other than MPI_COMM_WORLD
are not supported for now.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.comm_size Method
comm_size
Communicators other than MPI_COMM_WORLD
are not supported for now.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.error_class Method
error_class
MPI_Error_class
maps return values from MPI calls to a set of well-known MPI error classes.
Reactant.MLIR.Dialects.mpi.finalize Method
finalize
This function cleans up the MPI state. Afterwards, no MPI methods may be invoked (excpet for MPI_Get_version, MPI_Initialized, and MPI_Finalized). Notably, MPI_Init cannot be called again in the same program.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.init Method
init
This operation must preceed most MPI calls (except for very few exceptions, please consult with the MPI specification on these).
Passing &argc, &argv is not supported currently.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.irecv Method
irecv
MPI_Irecv begins a non-blocking receive of size
elements of type dtype
from rank dest
. The tag
value and communicator enables the library to determine the matching of multiple sends and receives between the same ranks.
Communicators other than MPI_COMM_WORLD
are not supported for now.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.isend Method
isend
MPI_Isend begins a non-blocking send of size
elements of type dtype
to rank dest
. The tag
value and communicator enables the library to determine the matching of multiple sends and receives between the same ranks.
Communicators other than MPI_COMM_WORLD
are not supported for now.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.recv Method
recv
MPI_Recv performs a blocking receive of size
elements of type dtype
from rank source
. The tag
value and communicator enables the library to determine the matching of multiple sends and receives between the same ranks.
Communicators other than MPI_COMM_WORLD
are not supported for now. The MPI_Status is set to MPI_STATUS_IGNORE
, as the status object is not yet ported to MLIR.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.retval_check Method
retval_check
This operation compares MPI status codes to known error class constants such as MPI_SUCCESS
, or MPI_ERR_COMM
.
Reactant.MLIR.Dialects.mpi.send Method
send
MPI_Send performs a blocking send of size
elements of type dtype
to rank dest
. The tag
value and communicator enables the library to determine the matching of multiple sends and receives between the same ranks.
Communicators other than MPI_COMM_WORLD
are not supported for now.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.
Reactant.MLIR.Dialects.mpi.wait Method
wait
MPI_Wait blocks execution until the request has completed.
The MPI_Status is set to MPI_STATUS_IGNORE
, as the status object is not yet ported to MLIR.
This operation can optionally return an !mpi.retval
value that can be used to check for errors.