MPI for Python: Performance improvements and MPI-2 extensions
By Lisandro Dalcin, Rodrigo Paz, Mario Alberto Storti, J. D'Elía. J. Parallel Distributed Comput., 2008
319 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. In its first release, MPI for Python was constructed on top of the MPI-1 specification defining an object-oriented interface that closely followed the MPI-2 C++ bindings, and provided support for communications of general Python objects. In the latest release, this package is improved to enable direct blocking/non-blocking communication of numeric arrays, and to support almost all MPI-2 features. Improvements in communication performance have been tested in a Beowulf class cluster. Results showed a negligible overhead in comparison to compiled C code. MPI for Python is open source and available for download on the web (http://mpi4py.scipy.org/).
Subfields: Artificial Intelligence, Hardware and Architecture
View Paper: https://www.semanticscholar.org/paper/bf93d6574c957be5d53b6113be50d8447df35e97
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
- Petros Koumoutsakos
- A. Elsaid
- Themistoklis P. Sapsis
- Pantelis R. Vlachas
- Michelle Girvan
- Jaideep Pathak
- Travis Desell
- Edward Ott
In Hardware and Architecture
Citations in the corpus
- Using ant colony optimization to optimize long short-term memory recurrent neural networks (2018, methodology): “Python’s Theano Library [23] was used to implement the neural networks and MPI for Python [3] and was used to run the ACO optimization on a high performance computing cluster.”
- Backpropagation algorithms and Reservoir Computing in Recurrent Neural Networks for the forecasting of complex spatiotemporal dynamics (2019, methodology): “The elements of the parallel architecture are trained independently, while the MPI (Dalcín, Paz, Kler, & Cosimo, 2011; Dalcín, Paz, Storti, & D’Elía, 2008; Walker & Dongarra, 1996) communication protocol is utilized to communicate the elements of the interaction for long-term forecasting.”
- NEURON and Python (2008, unknown): “To initialize MPI in Python, one must import a Python MPI module, such as “MPI for Python” ( mpi4py ) (Dalcín et al., 2008) For a list of available names, try dir(neuron).”
- A NICER View of PSR J0030+0451: Implications for the Dense Matter Equation of State (2019, unknown): “…Library(GSL; Gough 2009), NumPy(van der Walt et al. 2011), Cython(Behnel et al. 2011), SciPy(Jones et al. 2001), MPI (Forum 1994), MPI for Python(Dalcín et al. 2008), Matplotlib (Hunter 2007; Droettboom et al. 2018), IPython(Perez & Granger 2007), Jupyter(Kluyver et al. 2016), MULTINEST (Feroz…”