HAL will be down for maintenance from Friday, June 10 at 4pm through Monday, June 13 at 9am. More information
Skip to Main content Skip to Navigation
Conference papers

PolyBench/Python: benchmarking Python environments with polyhedral optimizations

Abstract : Python has become one of the most used and taught languages nowadays. Its expressiveness, cross-compatibility and ease of use have made it popular in areas as diverse as finance, bioinformatics or machine learning. However, Python programs are often significantly slower to execute than an equivalent native C implementation, especially for computation-intensive numerical kernels. This work presents PolyBench/Python, implementing the 30 kernels in PolyBench/C, one of the standard benchmark suites for polyhedral optimization, in Python. In addition to the benchmark kernels, a functional wrapper including mechanisms for performance measurement, testing, and execution configuration has been developed. The framework includes support for different ways to translate C-array codes into Python, offering insight into the tradeoffs of Python lists and NumPy arrays. The benchmark performance is thoroughly evaluated on different Python interpreters, and compared against its PolyBench/C counterpart to highlight the profitability (or lack thereof) of using Python for regular numerical codes.
Document type :
Conference papers
Complete list of metadata

Contributor : Fabrice Rastello Connect in order to contact the contributor
Submitted on : Friday, February 26, 2021 - 12:06:46 PM
Last modification on : Friday, February 4, 2022 - 3:24:10 AM
Long-term archiving on: : Thursday, May 27, 2021 - 6:29:57 PM


Files produced by the author(s)



Miguel Á. Abella-González, Pedro Carollo-Fernández, Louis-Noël Pouchet, Fabrice Rastello, Gabriel Rodríguez. PolyBench/Python: benchmarking Python environments with polyhedral optimizations. CC 2021 - 30th ACM SIGPLAN International Conference on Compiler Construction, Mar 2021, Seoul, South Korea. pp.59-70, ⟨10.1145/3446804.3446842⟩. ⟨hal-03153351⟩



Record views


Files downloads