PolyBench/Python: Benchmarking Python Environments with Polyhedral Optimizations
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.
Tue 2 MarDisplayed time zone: Eastern Time (US & Canada) change
13:30 - 14:15 | |||
13:30 15mTalk | PGZ: Automatic Zero-Value Code Specialization CC Research Papers | ||
13:45 15mTalk | Exploring the Space of Optimization Sequences for Code-Size Reduction: Insights and Tools CC Research Papers Anderson Faustino da Silva State University of Maringá, Bernardo N. B. de Lima Federal University of Minas Gerais, Fernando Magno Quintão Pereira Federal University of Minas Gerais | ||
14:00 15mTalk | PolyBench/Python: Benchmarking Python Environments with Polyhedral Optimizations CC Research Papers Miguel Á. Abella-González Universidade da Coruña, Pedro Carollo-Fernández Universidade da Coruña, Louis-Noël Pouchet Colorado State University, Fabrice Rastello Inria, Gabriel Rodríguez Universidade da Coruña |