OmpTracing: Easy Profiling of OpenMP Programs - Pinho, Vitoria; Yviquel, Hervé; Pereira, Marcio Machado; Araujo, Guido (Anais do International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD); 2020: Anais do XXXII International Symposium on Computer Architecture and High Performance Computing, 2020)
One of the greatest challenges of modern computing is the development of software for parallel execution. To address such challenge, programmers use profiling tools to record relevant operations, like the communications that the different parts of an application carried out during its execution. Profilers can be used to analyze the execution of the application as they enable the programmer to check its performance hot spots and sources of overhead. This paper introduces the OmpTracing library, a lightweight tool that eases the task of profiling OpenMP based applications without the need to inject expensive profiling code into the program. OmpTracing leverages on OMPT, an application programming interface that provides an introspection mechanism of the OpenMP runtime, and that enables the programmer to capture execution details of the parallelized application while generating notifications about significant program events.