Title :
Automatic low overhead program instrumentation with the LOPI framework
Author :
Kaagstrom, S. ; Grahn, Håkan ; Lundberg, Lars
Author_Institution :
Dept. of Syst. & Software Eng., Blekinge Inst. of Technol., Ronneby, Sweden
Abstract :
Program instrumentation is an important technique for different tasks such as performance measurements, debugging, and coverage analysis. Instrumentation, however, poses two important requirements to be useful: it must be easy to apply and it should perturb the application as little as possible. In this paper, we present the LOPI framework, which provides a simple means to automatically instrument binary files with low perturbation. An evaluation of the LOPI framework with detailed measurements of seven SPEC CPU2000 benchmarks show that the it gives lower perturbation in terms of instructions executed and cache behavior than Dyninst. For example, a LOPI instrumented application executes on average 36% more instructions, while a Dyninst instrumented application executes 49% more instructions for a common performance-oriented instrumentation, than the uninstrumented application.
Keywords :
optimising compilers; program debugging; program diagnostics; LOPI framework; SPEC CPU2000 benchmarks; binary file; binary rewriting; cache behavior; low overhead program instrumentation; optimising compilers; perturbation; program debugging; program diagnostics; Computer architecture; Debugging; High level languages; Instruments; Measurement; Optimizing compilers; Performance analysis; Program processors; Security; Software engineering; binary rewriting; performance measurements; perturbation; program instrumentation;
Conference_Titel :
Interaction between Compilers and Computer Architectures, 2005. INTERACT-9. 9th Annual Workshop on
Print_ISBN :
0-7695-2321-8
DOI :
10.1109/INTERACT.2005.5