Title :
Hijacker: Efficient static software instrumentation with applications in high performance computing: Poster paper
Author :
Pellegrini, Alessandro
Author_Institution :
Dipt. di Ing. Inf., Autom., Gestionale, Sapienza Univ. of Rome, Rome, Italy
Abstract :
Static Binary Instrumentation is a technique that allows compile-time program manipulation. In particular, by relying on ad-hoc tools, the end user is able to alter the program´s execution flow without affecting its overall semantic. This technique has been effectively used, e.g., to support code profiling, performance analysis, error detection, attack detection, or behavior monitoring. Nevertheless, efficiently relying on static instrumentation for producing executables which can be deployed without affecting the overall performance of the application still presents technical and methodological issues. In this paper, we present Hijacker, an open-source customizable static binary instrumentation tool which is able to alter a program´s execution flow according to some user-specified rules, limiting the execution overhead due to the code snippets inserted in the original program, thus enabling for the exploitation in high performance computing. The tool is highly modular and works on an internal representation of the program which allows to perform complex instrumentation tasks efficiently, and can be additionally extended to support different instruction sets and executable formats without any need to modify the instrumentation engine. We additionally present an experimental assessment of the overhead induced by the injected code in real HPC applications.
Keywords :
instruction sets; parallel processing; program compilers; public domain software; HPC applications; Hijacker; code injection; code snippets; compile-time program manipulation; high performance computing; instruction sets; instrumentation engine; open-source customizable static binary instrumentation tool; program execution flow; static software instrumentation; Assembly; Data structures; Instruments; Libraries; Runtime; XML;
Conference_Titel :
High Performance Computing and Simulation (HPCS), 2013 International Conference on
Conference_Location :
Helsinki
Print_ISBN :
978-1-4799-0836-3
DOI :
10.1109/HPCSim.2013.6641486