PyOMP: Multithreaded Parallel Programming in Python
Journal Article
·
· Computing in Science and Engineering
- Intel Corporation, Hillsboro, OR (United States)
- Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
We know that Python is a widely used language in scientific computing. When the goal is high performance, however, Python lags far behind low-level languages such as C and Fortran. To support applications that stress performance, Python needs to access the full capabilities of modern CPUs. That means support for parallel multithreading. In this paper, we describe PyOMP, a system that enables OpenMP in Python. Programmers write code in Python with OpenMP, Numba generates code that compiles to LLVM, and the resulting programs run with performance that approaches that from code written with C and OpenMP. In this paper we provide an update on the PyOMP project and explain how to install it and use it to write parallel multithreaded code in Python.
- Research Organization:
- Lawrence Livermore National Laboratory (LLNL), Livermore, CA (United States)
- Sponsoring Organization:
- USDOE
- Grant/Contract Number:
- AC52-07NA27344
- OSTI ID:
- 1843562
- Report Number(s):
- LLNL-JRNL--829084; 1044930
- Journal Information:
- Computing in Science and Engineering, Journal Name: Computing in Science and Engineering Journal Issue: 6 Vol. 23; ISSN 1521-9615
- Publisher:
- IEEE Computer SocietyCopyright Statement
- Country of Publication:
- United States
- Language:
- English
Numba: a LLVM-based Python JIT compiler
|
conference | January 2015 |
Multithreaded parallel Python through OpenMP support in Numba
|
conference | January 2021 |
Similar Records
Evaluating performance and portability of high-level programming models: Julia, Python/Numba, and Kokkos on exascale nodes
GPAW - massively parallel electronic structure calculations with Python-based software.
The Kokkos OpenMPTarget Backend: Implementation and Lessons Learned
Conference
·
Mon May 01 00:00:00 EDT 2023
·
OSTI ID:1994693
GPAW - massively parallel electronic structure calculations with Python-based software.
Journal Article
·
Fri Dec 31 23:00:00 EST 2010
· Procedia Comput. Sci.
·
OSTI ID:1015952
The Kokkos OpenMPTarget Backend: Implementation and Lessons Learned
Conference
·
Fri Sep 01 00:00:00 EDT 2023
·
OSTI ID:2224192