A Performance Visualization Method for OpenMP Tasks
Cheng Stella Qian, Zhijun Ding, Haiping Sun · 2013
OpenMP 3.x introduces task construct as a solution for irregular parallel problems, which breaks the established model of the execution of OpenMP programs. When a thread encounters a task construct, it doesn't execute the task immediately, and instead, it encapsulates the task and stores it until the task is started at some task scheduling point. Thus, there emerge some new requirements of performance analysis tools for OpenMP tasks. This paper proposes an original profiling-based performance visualization method for OpenMP tasks, named Profiled Timeline Graph (PTG), to meet all these requirements. PTG is a combination of call-path graph and timeline graph, which can help programmers uncover many performance issues of OpenMP tasks. First, the motivation, the concept and the definition of PTG are given in the paper. Second, we present a prototype implementation of PTG with our performance analysis system. Finally, the evaluation of the system with NPB and BOTS benchmark codes is given.