Instrew: Leveraging LLVM for high performance dynamic binary instrumentation

Alexis Engelke, Martin Schulz

Publikation: Beitrag in Buch/Bericht/KonferenzbandKonferenzbeitragBegutachtung

16 Zitate (Scopus)

Abstract

Dynamic binary instrumentation frameworks are popular tools to enhance programs with additional analysis, debugging, or profiling facilities or to add optimizations or translations without requiring recompilation or access to source code. They analyze the binary code, translate into a--Typically low-level--intermediate representation, add the needed instrumentation or transformation and then generate new code on-demand and at run-Time. Most tools thereby focus on a fast code rewriting process at the cost of lower quality code, leading to a significant slowdown in the instrumented code. Further, most tools run in the application's address space, making their development cumbersome. We propose a novel dynamic binary instrumentation framework, Instrew, which closes these gaps by (a) leveraging the LLVM compiler infrastructure for high-quality code optimization and generation and (b) enables process isolation between the target code and the instrumenter. Instead of using our own non-portable and low-level intermediate representation, our framework directly lifts the original machine code into LLVM-IR, where instrumentation and behavioral changes may be performed, and from which high quality code can be produced. Results on the SPEC CPU2017 benchmarks show that the rewriting overhead is only 1/5 of the overhead incurred using the state-of-The-Art toolchain Valgrind.

OriginalspracheEnglisch
TitelVEE 2020 - Proceedings of the 16th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments
Herausgeber (Verlag)Association for Computing Machinery, Inc
Seiten172-184
Seitenumfang13
ISBN (elektronisch)9781450375542
DOIs
PublikationsstatusVeröffentlicht - 17 März 2020
Veranstaltung16th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, VEE 2020 - Lausanne, Schweiz
Dauer: 17 März 2020 → …

Publikationsreihe

NameVEE 2020 - Proceedings of the 16th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments

Konferenz

Konferenz16th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, VEE 2020
Land/GebietSchweiz
OrtLausanne
Zeitraum17/03/20 → …

Fingerprint

Untersuchen Sie die Forschungsthemen von „Instrew: Leveraging LLVM for high performance dynamic binary instrumentation“. Zusammen bilden sie einen einzigartigen Fingerprint.

Dieses zitieren