Controlling the Runtime Overhead of Python Monitoring with Selective Instrumentation
Research output: Contribution to book/conference proceedings/anthology/report › Conference contribution › Contributed › peer-review
Contributors
Abstract
Within the last years, Python became more prominent in the scientific community and is now used for simulations, machine learning, and data analysis. All these tasks profit from parallelism and offloading. In the domain of High Performance Computing (HPC), we can look back to decades of experience exploiting the different levels of parallelism. By using performance analysis tools like Score-P, we support tuning applications and their parallelism for performance. The HPC community developed approaches to make this analysis as efficient as possible and reduce the overhead these tools introduced. However, the overhead introduced is still significant for complex Python applications, and the traditional compile-time filtering is not available in Python. Therefore, we come up with a selective instrumentation approach. Using some of Pythons concepts, we designed a powerful and intuitive alternative to compile-time filtering for Python. We finish with a small use case from a real-world machine learning application.
Details
Original language | English |
---|---|
Title of host publication | 2021 IEEE/ACM International Workshop on Programming and Performance Visualization Tools (ProTools) |
Number of pages | 9 |
ISBN (electronic) | 9781665411103 |
Publication status | Published - Nov 2021 |
Peer-reviewed | Yes |
External IDs
Scopus | 85124484757 |
---|---|
ORCID | /0009-0003-0666-4166/work/151475586 |
Keywords
ASJC Scopus subject areas
Keywords
- HPC, Instrumentation, Performance Analysis, Python