DocumentCode
2160118
Title
DIME: Time-aware dynamic binary instrumentation using rate-based resource allocation
Author
Arafa, Pansy ; Kashif, H. ; Fischmeister, Sebastian
Author_Institution
Dept. of Electr. & Comput. Eng., Univ. of Waterloo, Waterloo, ON, Canada
fYear
2013
fDate
Sept. 29 2013-Oct. 4 2013
Firstpage
1
Lastpage
10
Abstract
Program analysis tools are essential for understanding programs, analyzing performance, and optimizing code. Some of these tools use code instrumentation to extract information at runtime. The instrumentation process can alter program behavior such as timing behavior and memory consumption. Time-sensitive programs, however, must meet specific timing constraints and thus require that the instrumentation process, for instance, bounds the timing overhead. Time-aware instrumentation techniques try to honor the timing constraints of such programs. All previous techniques, however, support only static source-code instrumentation methods. Hence, they become impractical beyond microcontroller code for instrumenting large programs along with all their library dependencies. In this work, we propose DIME, a time-aware dynamic binary instrumentation technique that adds an adjustable bound on the timing overhead to the program under analysis. We implement DIME using the dynamic instrumentation framework, Pin. Quantitative evaluation of the three implementation alternatives shows an average reduction of the instrumentation overhead by 12, 7, and 3 folds compared to native Pin. Instrumenting the VLC media player and a laser beam stabilization experiment demonstrate the practicality and scalability of DIME.
Keywords
program diagnostics; resource allocation; reverse engineering; DIME technique; Pin dynamic instrumentation framework; VLC media player; code optimization; information extraction; laser beam stabilization experiment; memory consumption; microcontroller code; program analysis tools; program behavior; program understanding; rate-based resource allocation; static source-code instrumentation methods; time-aware dynamic binary instrumentation; time-sensitive programs; timing behavior; timing constraints; timing overhead; Data mining; Instruments; Resource management; Runtime; Switches; Timing; Tin; Instrumentation; Profiling; Tracing;
fLanguage
English
Publisher
ieee
Conference_Titel
Embedded Software (EMSOFT), 2013 Proceedings of the International Conference on
Conference_Location
Montreal, QC
Type
conf
DOI
10.1109/EMSOFT.2013.6658603
Filename
6658603
Link To Document