Logo Cineca Logo SCAI

You are here


3.0.0--python--3.6.4 (Marconi)

This package provides Python bindings for the Message Passing Interface (MPI) standard. It is implemented on top of the MPI-1/2/3 specification and exposes an API which grounds on the standard MPI-2 C++ bindings.

This package supports:
- Convenient communication of any picklable Python object
- point-to-point (send & receive)
- collective (broadcast, scatter & gather, reductions)
- Fast communication of Python object exposing the Python buffer interface (NumPy arrays, builtin bytes/string/array objects)
- point-to-point (blocking/nonbloking/persistent send & receive)
- collective (broadcast, block/vector scatter & gather, reductions)
- Process groups and communication domains
- Creation of new intra/inter communicators
- Cartesian & graph topologies
- Parallel input/output:
- read & write
- blocking/nonbloking & collective/noncollective
- individual/shared file pointers & explicit offset
- Dynamic process management
- spawn & spawn multiple
- accept/connect
- name publishing & lookup
- One-sided operations
- remote memory access (put, get, accumulate)
- passive target syncronization (start/complete & post/wait)
- active target syncronization (lock & unlock)

Target user: 
Support level: 
Help and documentation: 

You can find documentation on the module, with the command

module help mpi4py