Binary analysis for attribution and interpretation of performance measurements on fully-optimized code

Date
2007
Journal Title
Journal ISSN
Volume Title
Publisher
Description
Abstract

Modern scientific codes frequently employ sophisticated object-oriented design. In these codes, deep loop nests are often spread across multiple routines. To achieve high performance, such codes rely on compilers to inline routines and optimize loops. Consequently, to effectively interpret performance, transformed loops must be understood in the calling context of transformed routines. To understand the performance of optimized object-oriented code, we describe how to analyze optimized object code and its debugging sections to recover its program structure and reconstruct a mapping back to its source code. Using this mapping, we combine the recovered static program structure with dynamic call path profiles to expose inlined frames and loop nests. Experiments show that performance visualizations based on this information provide unique insight into the performance of complex object-oriented codes written in C++. This work is implemented in HPC-TOOLKIT, a performance analysis toolkit.

Description
Degree
Master of Arts
Type
Thesis
Keywords
Computer science
Citation

Tallent, Nathan Russell. "Binary analysis for attribution and interpretation of performance measurements on fully-optimized code." (2007) Master’s Thesis, Rice University. https://hdl.handle.net/1911/20542.

Has part(s)
Forms part of
Published Version
Rights
Copyright is held by the author, unless otherwise indicated. Permission to reuse, publish, or reproduce the work beyond the bounds of fair use or other exemptions to copyright law must be obtained from the copyright holder.
Link to license
Citable link to this page