TY - GEN
T1 - Usability and Performance Improvements in Hatchet
AU - Brink, Stephanie
AU - Lumsden, Ian
AU - Scully-Allison, Connor
AU - Williams, Katy
AU - Pearce, Olga
AU - Gamblin, Todd
AU - Taufer, Michela
AU - Isaacs, Katherine E.
AU - Bhatele, Abhinav
N1 - Funding Information:
ACKNOWLEDGMENT This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory under Contract DE-AC52-07NA27344 (LLNL-CONF-814318). This work was supported in part by funding provided by the University of Maryland College Park Foundation.
Publisher Copyright:
© 2020 IEEE.
PY - 2020/11
Y1 - 2020/11
N2 - Performance analysis is critical for pinpointing bottlenecks in parallel applications. Several profilers exist to instrument parallel programs on HPC systems and gather performance data. Hatchet is an open-source Python library that can read profiling output of several tools, and enables the user to perform a variety of programmatic analyses on hierarchical performance profiles. In this paper, we augment Hatchet to support new features: A query language for representing call path patterns that can be used to filter a calling context tree, visualization support for displaying and interacting with performance profiles, and new operations for performing analyses on multiple datasets. Additionally, we present performance optimizations in Hatchet's HPCToolkit reader and the unify operation to enable scalable analysis of large datasets.
AB - Performance analysis is critical for pinpointing bottlenecks in parallel applications. Several profilers exist to instrument parallel programs on HPC systems and gather performance data. Hatchet is an open-source Python library that can read profiling output of several tools, and enables the user to perform a variety of programmatic analyses on hierarchical performance profiles. In this paper, we augment Hatchet to support new features: A query language for representing call path patterns that can be used to filter a calling context tree, visualization support for displaying and interacting with performance profiles, and new operations for performing analyses on multiple datasets. Additionally, we present performance optimizations in Hatchet's HPCToolkit reader and the unify operation to enable scalable analysis of large datasets.
KW - call graph
KW - calling context tree
KW - graph analytics
KW - parallel profiles
KW - performance analysis tools
UR - http://www.scopus.com/inward/record.url?scp=85099722910&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85099722910&partnerID=8YFLogxK
U2 - 10.1109/HUSTProtools51951.2020.00013
DO - 10.1109/HUSTProtools51951.2020.00013
M3 - Conference contribution
AN - SCOPUS:85099722910
T3 - Proceedings of 2020 IEEE/ACM International Workshop on HPC User Support Tools, HUST 2020 and the Workshop on Programming and Performance Visualization Tools, ProTools 2020 - Held in conjunction with SC 2020: The International Conference for High Performance Computing, Networking, Storage and Analysis
SP - 49
EP - 58
BT - Proceedings of 2020 IEEE/ACM International Workshop on HPC User Support Tools, HUST 2020 and the Workshop on Programming and Performance Visualization Tools, ProTools 2020 - Held in conjunction with SC 2020
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 7th Annual IEEE/ACM International Workshop on HPC User Support Tools, HUST 2020 and the 2nd Workshop on Programming and Performance Visualization Tools, ProTools 2020
Y2 - 18 November 2020
ER -