MPI for Python
By Lisandro Dalcin, Rodrigo Paz, Mario Alberto Storti. 2005
435 citations recorded by the source corpus.
MPI for Python provides bindings of the Message Passing Interface (MPI) standard for the Python programming language and allows any Python program to exploit multiple processors. This package is constructed on top of the MPI-1 specification and defines an object-oriented interface which closely follows MPI-2 C++bindings. It supports point-to-point (sends, receives) and collective (broadcasts, scatters, gathers) communications of general Python objects. Efficiency has been tested in a Beowulf class cluster and satisfying results were obtained. MPI for Python is open source and available for download on the web (http://www.cimec.org.ar/python).
Subfields: Artificial Intelligence, Hardware and Architecture
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Amir Salman Avestimehr
- Basak Guler
- Jinhyun So
- Amirhossein Reisizadeh
- Ramtin Pedarsani
- Jianyu Wang
- Gauri Joshi
- Saurav Prakash
In Hardware and Architecture
- Amir Salman Avestimehr
- Jinhyun So
- Basak Guler
- Jianyu Wang
- Gauri Joshi
- Ramtin Pedarsani
- Amirhossein Reisizadeh
- Saurav Prakash
Citations in the corpus
- Turbo-Aggregate: Breaking the Quadratic Aggregation Barrier in Secure Federated Learning (2020, methodology): “Communication is implemented using the MPI4Py [51] message passing interface”
- Adaptive Communication Strategies to Achieve the Best Error-Runtime Trade-off in Local-Update SGD (2018, methodology): “The proposed adaptive communication scheme was implemented in PyTorch [20] with MPI4Py [5].”
- Communication Efficient Parallel Algorithms for Optimization on Manifolds (2018, methodology): “We wrote the code for our implementations in Python and carried out the parallelization of the code through MPI1[7].”
- Coded computation over heterogeneous clusters (2017, methodology): “We use Python with mpi4py package [35] to implement our developed HCMM scheme over Amazon EC2 clusters.”
- PyCUDA and PyOpenCL: A scripting-based approach to GPU run-time code generation (2009, methodology): “Significantly, the combination of our software with the mpi4py package [5] allows a straightforward use of hybrid shared-memory GPU-based and distributed-memory MPI-based parallelism.”
- MPI for Python: Performance improvements and MPI-2 extensions (2008, methodology): “MPI for Python [26] is a Python package providing bindings of the MPI standard, allowing any Python program to exploit multiple processors.”
- A Scalable Approach for Privacy-Preserving Collaborative Machine Learning (2020, methodology): “Communication between clients is implemented using the MPI4Py [38] interface on Python .”
- CodedPrivateML: A Fast and Privacy-Preserving Framework for Distributed Machine Learning (2019, methodology): “We implement CodedPrivateML using the MPI4Py (Dalcı́n et al., 2005) message passing interface on Python.”
- Coded Computation Over Heterogeneous Clusters (2019, methodology): “We use Python with mpi4py package [35] to implement our developed HCMM scheme over Amazon EC2 clusters.”