Compact Trace Trees in Dynamic Binary Translators
نویسندگان
چکیده
Trace Tree (TT) is a technique to collect program execution traces, which is commonly used in JIT environments. Its main features are the ability to perform loop unrolling and function inlining at no cost, while detecting application loop kernels. In this paper we evaluate a TT implementation in a DBT environment. We show that, under DBT, trace trees suffer from severe code duplication, considerably degrading its performance. In order to take advantage of the TTs interesting features in DBTs, we propose a variation called Compact Trace Trees (CTTs), which we show to be faster and to reduce code duplication.
منابع مشابه
Fast Binary Translation: Translation Efficiency and Runtime Efficiency
Fast binary translation is a key component for many modern software techniques. This paper reflects on the implementation of fastBT, a generator for low-overhead, tablebased dynamic (just-in-time) binary translators. We discuss the most challenging sources of overhead, propose optimizations to further reduce these penalties, and present a detailed performance analysis with different approaches ...
متن کاملBinary Translation: Static, Dynamic, Retargetable?
Cristina Cifuentes Department of Computer Science The University of Queensland Brisbane Qld 4072, Australia [email protected] Vishv Malhotra Department of Computer Science University of Tasmania Hobart Tas 7001, Australia [email protected] Abstract The porting of software to newer and faster machines using static binary translation techniques has proved successful to a large extent. Curren...
متن کاملCold Code Analysis
Dynamic binary translators are programs that translate binary programs from one machine to another. The translation is done on the fly, so performance is a major issue in this kind of system. Identifying and optimizing hot traces is a way to achieve more performance, and also to compensate for the translation overhead. Aggressive optimizations need precise data/control-flow information about th...
متن کاملDynamic Binary Translation
This paper presents an overview of dynamic binary translation. Dynamic binary translation is the process of translating code for one instruction set architecture to code for another on the fly, i.e., dynamically. Dynamic binary translators are used for emulation, migration, and recently for the economic implementation of complex instruction set architectures. Most of the problems occuring in dy...
متن کاملDynamic Malicious Code Detection Based on Binary Translator
The binary translator is a software component of a computer system. It converts binary code of one ISA into binary code of another ISA. Recent trends show that binary translators have been used to save CPU power consumption and CPU die size, which makes binary translators a possible indispensable component of future computer systems. And such situation would give new opportunities to the securi...
متن کامل