An Effective RCP Application for Program Performance Analysis
7
·
8
·
9
·
10
·
11
·
12
·
13
·
14
·
15
·
16
·
17
·
18
Laksono
We have developed a toolkit that collects performance measurements of fully-optimized executables using sampling, analyzes application binaries to understand the structure of optimized code, correlates measurements with program structure, and presents the resulting performance data in a top-down fashion to facilitate rapid analysis.
In this talk, we focus on our RCP application, which presents performance metrics in the context of a program's source. The RCP can present an arbitrary collection of performance metrics gathered during one or more runs, reveal a "
hot path", or compute new derived metrics. It also supports multiple views of performance data that facilitate analysis:
- A top-down calling-context view associates an execution's dynamic calling contexts with their costs. Using this view, one can see how much of the application's cost was incurred by a function when called from a particular context.
- A bottom-up caller's view enables one to look upward along call paths. This view is useful for understanding the performance of software components or procedures that are called in more than one context.
- A flat view organizes performance data according to an application's static structure. All costs incurred in any calling context by a procedure are aggregated together in the flat view. The flat view shows the detailed breakdown of a procedure's cost among its loops, source lines, and inlined code.
Laksono Adhianto is a postdoctoral researcher at Rice University, department of computer science. His research interest includes research and development of tools for measurement and analysis of application performance. He is a member of HPCToolkit project led by Prof. John Mellor-Crummey. HPCToolkit is open-source suite of multi-platform tools for profile-based performance analysis of applications
This session is part of the curated collection of short talks titled
"Real World RCP"