TU Darmstadt / ULB / TUbiblio

Compiler-Assisted Instrumentation Selection for Large-Scale C++ Codes

Kreutzer, Sebastian ; Iwainsky, Christian ; Lehr, Jan-Patrick ; Bischof, Christian (2022)
Compiler-Assisted Instrumentation Selection for Large-Scale C++ Codes.
37th International Conference on High Performance Computing (ISC 2022). Hamburg, Germany (29.05.2022-02.06.2022)
doi: 10.1007/978-3-031-23220-6_1
Konferenzveröffentlichung, Bibliographie

Kurzbeschreibung (Abstract)

Code instrumentation is the primary method for collecting fine-grained performance data. As instrumentation introduces an inherent runtime overhead, it is essential to measure only those regions of the code which are most relevant to the analysis. In practice, the typical approach is to define filter lists manually. Prior projects aim to automate this process using static analysis. Specifically, InstRO enables tailored instrumentation via sophisticated user-defined selection of code regions. However, due to the need for whole-program call-graph analysis, its application on large-scale scientific codes is currently impractical. In this work, we present the new instrumentation tool CaPI (short for ``Compiler-assisted Performance Instrumentation''), which is targeted towards such large-scale applications. We demonstrate its application on the CFD framework OpenFOAM. Our evaluation shows that a hybrid approach of CaPI and existing profile-guided filtering outperforms profile-guided filtering alone. Furthermore, we identify correctness and usability issues and propose possible avenues to improve CaPI, as well as compiler-assisted instrumentation tools in general.

Typ des Eintrags: Konferenzveröffentlichung
Erschienen: 2022
Autor(en): Kreutzer, Sebastian ; Iwainsky, Christian ; Lehr, Jan-Patrick ; Bischof, Christian
Art des Eintrags: Bibliographie
Titel: Compiler-Assisted Instrumentation Selection for Large-Scale C++ Codes
Sprache: Englisch
Publikationsjahr: 2022
Verlag: Springer
Buchtitel: High Performance Computing: ISC High Performance 2022 International Workshops
Reihe: Lecture Notes in Computer Science
Band einer Reihe: 13387
Veranstaltungstitel: 37th International Conference on High Performance Computing (ISC 2022)
Veranstaltungsort: Hamburg, Germany
Veranstaltungsdatum: 29.05.2022-02.06.2022
DOI: 10.1007/978-3-031-23220-6_1
URL / URN: https://link.springer.com/chapter/10.1007/978-3-031-23220-6_...
Kurzbeschreibung (Abstract):

Code instrumentation is the primary method for collecting fine-grained performance data. As instrumentation introduces an inherent runtime overhead, it is essential to measure only those regions of the code which are most relevant to the analysis. In practice, the typical approach is to define filter lists manually. Prior projects aim to automate this process using static analysis. Specifically, InstRO enables tailored instrumentation via sophisticated user-defined selection of code regions. However, due to the need for whole-program call-graph analysis, its application on large-scale scientific codes is currently impractical. In this work, we present the new instrumentation tool CaPI (short for ``Compiler-assisted Performance Instrumentation''), which is targeted towards such large-scale applications. We demonstrate its application on the CFD framework OpenFOAM. Our evaluation shows that a hybrid approach of CaPI and existing profile-guided filtering outperforms profile-guided filtering alone. Furthermore, we identify correctness and usability issues and propose possible avenues to improve CaPI, as well as compiler-assisted instrumentation tools in general.

Freie Schlagworte: Instrumentation, OpenFOAM, Score-P, Static analysis
Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
20 Fachbereich Informatik > Scientific Computing
Hinterlegungsdatum: 16 Jan 2023 10:14
Letzte Änderung: 16 Jan 2023 13:19
PPN: 503677310
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen