From hack to elaborate technique—a survey on binary rewriting

M Wenzl, G Merzdovnik, J Ullrich… - ACM Computing Surveys …, 2019 - dl.acm.org
Binary rewriting is changing the semantics of a program without having the source code at
hand. It is used for diverse purposes, such as emulation (eg, QEMU), optimization (eg …

Pin: building customized program analysis tools with dynamic instrumentation

CK Luk, R Cohn, R Muth, H Patil, A Klauser… - Acm sigplan …, 2005 - dl.acm.org
Robust and powerful software instrumentation tools are essential for program analysis tasks
such as profiling, performance evaluation, and bug detection. To meet this need, we have …

Qilin: exploiting parallelism on heterogeneous multiprocessors with adaptive map**

CK Luk, S Hong, H Kim - Proceedings of the 42nd Annual IEEE/ACM …, 2009 - dl.acm.org
Heterogeneous multiprocessors are increasingly important in the multi-core era due to their
potential for high performance and energy efficiency. In order for software to fully realize this …

[PDF][PDF] Efficient, transparent, and comprehensive runtime code manipulation

D Bruening, S Amarasinghe - 2004 - burningcutlery.com
This thesis addresses the challenges of building a software system for general-purpose
runtime code manipulation. Modern applications, with dynamically-loaded modules and …

Bolt: a practical binary optimizer for data centers and beyond

M Panchenko, R Auler, B Nell… - 2019 IEEE/ACM …, 2019 - ieeexplore.ieee.org
Performance optimization for large-scale applications has recently become more important
as computation continues to move towards data centers. Data-center applications are …

Dynamic binary analysis and instrumentation

N Nethercote - 2004 - cl.cam.ac.uk
Dynamic binary analysis (DBA) tools such as profilers and checkers help programmers
create better software. Dynamic binary instrumentation (DBI) frameworks make it easy to …

Ripple: Profile-guided instruction cache replacement for data center applications

TA Khan, D Zhang, A Sriraman… - 2021 ACM/IEEE 48th …, 2021 - ieeexplore.ieee.org
Modern data center applications exhibit deep software stacks, resulting in large instruction
footprints that frequently cause instruction cache misses degrading performance, cost, and …

I-spy: Context-driven conditional instruction prefetching with coalescing

TA Khan, A Sriraman, J Devietti… - 2020 53rd Annual …, 2020 - ieeexplore.ieee.org
Modern data center applications have rapidly expanding instruction footprints that lead to
frequent instruction cache misses, increasing cost and degrading data center performance …

A compiler-level intermediate representation based binary analysis and rewriting system

K Anand, M Smithson, K Elwazeer, A Kotha… - Proceedings of the 8th …, 2013 - dl.acm.org
This paper presents component techniques essential for converting executables to a high-
level intermediate representation (IR) of an existing compiler. The compiler IR is then …

Twig: Profile-guided btb prefetching for data center applications

TA Khan, N Brown, A Sriraman… - MICRO-54: 54th Annual …, 2021 - dl.acm.org
Modern data center applications have deep software stacks, with instruction footprints that
are orders of magnitude larger than typical instruction cache (I-cache) sizes. To efficiently …