Abstract
Performance measurement of parallel, object-oriented (OO) programs requires the development of instrumentation and analysis techniques beyond those used for more traditional languages. Performance events must be redefined for the conceptual OO programming model, and those events must be instrumented and tracked in the context of OO language abstractions, compilation methods, and runtime execution dynamics. In this paper, we focus on the profiling and tracing of C++ applications that have been written using a rich parallel programming framework for high-performance, scientific computing. We address issues of class-based profiling, instrumentation of templates, runtime function identification, and polymorphic (type-based) profiling. Our solutions are implemented in the TAU portable profiling package which also provides support for profiling groups and user-level timers. We demonstrate TAU's C++ profiling capabilities for real parallel applications, built from components of the ACTS toolkit. Future directions include work on runtime performance data access, dynamic instrumentation, and higher-level performance data analysis and visualization that relates object semantics with performance execution behavior.
Original language | English (US) |
---|---|
Pages | 134-145 |
Number of pages | 12 |
DOIs | |
State | Published - 1998 |
Event | Proceedings of the 1998 SIGMETRICS Symposium on Parallel and Distributed Tools - Welches, OR, USA Duration: Aug 3 1998 → Aug 4 1998 |
Conference
Conference | Proceedings of the 1998 SIGMETRICS Symposium on Parallel and Distributed Tools |
---|---|
City | Welches, OR, USA |
Period | 8/3/98 → 8/4/98 |
ASJC Scopus subject areas
- General Engineering
- General Computer Science