Is Source-Code Isolation Viable for Performance Characterization?

Abstract

Source-code isolation finds and extracts the hotspots of an application as independent isolated fragments of code, called codelets. Codelets can be modified, compiled, run, and measured independently from the original application. Source-code isolation reduces benchmarking cost and allows piece-wise optimization of an application. Source-code isolation is faster than whole-program benchmarking and optimization since the user can concentrate only on the bottlenecks. This paper examines the viability of using isolated codelets in place of the original application for performance characterization and optimization. On the NAS benchmarks, we show that codelets capture 92.3% of the original execution time. We present a set of techniques for keeping codelets as faithful as possible to the original hotspots: 63.6% of the codelets have the same assembly as the original hotspots and 81.6% of the codelets have the same run time performance as the original hotspots.

DOI: 10.1109/ICPP.2013.116
View Slides

Extracted Key Phrases

10 Figures and Tables

Cite this paper

@article{Akel2013IsSI, title={Is Source-Code Isolation Viable for Performance Characterization?}, author={Chadi Akel and Yuriy Kashnikov and Pablo de Oliveira Castro and William Jalby}, journal={2013 42nd International Conference on Parallel Processing}, year={2013}, pages={977-984} }