DOE OSTI · 1038396
Automatic Parallelization of Numerical Python Applications using the Global Arrays Toolkit
Abstract
Global Arrays is a software system from Pacific Northwest National Laboratory that enables an efficient, portable, and parallel shared-memory programming interface to manipulate distributed dense arrays. The NumPy module is the de facto standard for numerical calculation in the Python programming language, a language whose use is growing rapidly in the scientific and engineering communities. NumPy provides a powerful N-dimensional array class as well as other scientific computing capabilities. However, like the majority of the core Python modules, NumPy is inherently serial. Using a combination of Global Arrays and NumPy, we have reimplemented NumPy as a distributed drop-in replacement called Global Arrays in NumPy (GAiN). Serial NumPy applications can become parallel, scalable GAiN applications with only minor source code changes. Scalability studies of several different GAiN applications will be presented showing the utility of developing serial NumPy codes which can later run on more capable clusters or supercomputers.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Daily, Jeffrey A, Lewis, Robert R. 2011-11-30. Automatic Parallelization of Numerical Python Applications using the Global Arrays Toolkit. https://doi.org/10.1145/2148600.2148623
Cite the original work for its findings. Save a collection to share your selection of sources.