Mpicom Python Module

Details about the mpicom Python Module

Simple MPI wrapper for use in VisIt Python Filters. It may be supplanted by mpi4py in the future.

Current Functionality

Function Details Arguments Return Type Status
init() Set up mpi environment (VisIt's python filter environment handles this call) argv=sys.argv, or caddy=addy_str (a string containing an active mpi communicator address) None Done
finalize() Shutsdown the mpi environment (Note within VisIt's python filters this call is unnecessary) None None Done
rank() Returns the mpi rank of the current process. None Integer Done
size() Returns the size of the mpi communicator. None Integer Done
min() Min reduce. Number, Array of Numbers Number, Array of Numbers Done
max() Max reduce. Number, Array of Numbers Number, Array of Numbers Done
sum() Sum reduce. Number, Array of Numbers Number, Array of Numbers Done
mult() Product reduce. Number, Array of Numbers Number, Array of Numbers Done
barrier() Barrier for all processes. None None Done
send() Point to point send. Python Object, Destination Rank None Done
recv() Point to point receive. Source Rank Python Object Done
sendrecv() One call to send and recv. Object Destination Rank, Source Rank Python Object Done
broadcast() Broadcast from one process to all others. Python Object (for broadcast root) Python Object (for broadcast receivers) Done
gather() Gather a message from each proc (currently an 'allgather', need root option in future.) Python Object Sequence of Python Objects Done
scatter() Scatter a sequence of messages from a root process to all others. Sequence of Python Objects Python Object Done
alltoall() All to all send Sequence of Python Objects Sequence of Python Objects Done

Supported Comm Types: int, double, int array, double array, strings, python objects

Future Functionality

  • Support vtkDataSet, vtkDataArray