December 2023

Conference Paper

Compile-Time Library Call Detection Using CAASCADE and XALT

By:
Zhao, Jisheng ; Hernandez Mendoza, Oscar R; Budiardja, Reuben D; Lopez, Matthew G; Sarkar, Vivek ; Wells, Jack C
Page Number:
440-447
Volume:
11203
Book Title:
ISC High Performance 2018. Lecture Notes in Computer Science
Publication Date:
December 27, 2023
Conference Name:
International Workshop on OpenPOWER for HPC (IWOPH 2018)
Conference Location:
Frankfurt, Germany
Conference Sponsor:
Various
View DOI Listing:
https://doi.org/10.1007/978-3-030-02465-9_31

Abstract

CAASCADE — Compiler-Assisted Application Source Code Analysis and DatabasE—is a tool that summarizes the use of parallel programming language features in application source code using compiler technology. This paper discusses the library detection capability within CAASCADE to find information about the usage of scientific libraries within the source code. The information that CAASCADE collects provides insights into the usage of library calls in an applications. CAASCADE can classify the APIs by scientific libraries (e.g. LAPACK, BLAS, FFTW, etc). It can also detect the context in which a library API is being invoked, for example within a serial or multi-threaded region. To collect this information, CAASCADE uses compiler plugins that summarize procedural information and uses Apache Spark to do inter-procedural analysis to reconstruct call chains. In addition to this, we also integrated CAASCADE to work with XALT to collect library information based on linkage and modules installed on a system.