• Home
  • Search
  • Generalized just-in-time trace compilation using a parallel task farm in a dynamic binary translator
  • Open Access IconOpen Access
  • Cite Icon47
  • https://doi.org/10.1145/1993498.1993508Copy DOI Icon

Generalized just-in-time trace compilation using a parallel task farm in a dynamic binary translator

  • Jun 4, 2011
  • Igor Böhm +4 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Dynamic Binary Translation (DBT) is the key technology behind cross-platform virtualization and allows software compiled for one Instruction Set Architecture (ISA) to be executed on a processor supporting a different ISA. Under the hood, DBT is typically implemented using Just-In-Time (JIT) compilation of frequently executed program regions, also called traces. The main challenge is translating frequently executed program regions as fast as possible into highly efficient native code. As time for JIT compilation adds to the overall execution time, the JIT compiler is often decoupled and operates in a separate thread independent from the main simulation loop to reduce the overhead of JIT compilation. In this paper we present two innovative contributions. The first contribution is a generalized trace compilation approach that considers all frequently executed paths in a program for JIT compilation, as opposed to previous approaches where trace compilation is restricted to paths through loops. The second contribution reduces JIT compilation cost by compiling several hot traces in a concurrent task farm. Altogether we combine generalized light-weight tracing, large translation units, parallel JIT compilation and dynamic work scheduling to ensure timely and efficient processing of hot traces. We have evaluated our industry-strength, LLVM-based parallel DBT implementing the ARCompact ISA against three benchmark suites (EEMBC, BioPerf and SPEC CPU2006) and demonstrate speedups of up to 2.08 on a standard quad-core Intel Xeon machine. Across short- and long-running benchmarks our scheme is robust and never results in a slowdown. In fact, using four processors total execution time can be reduced by on average 11.5% over state-of-the-art decoupled, parallel (or asynchronous) JIT compilation.

Similar Papers
  • Research Article
  • Citations11

Efficient and Retargetable Dynamic Binary Translation on Multicores

  • Mar 01, 2014
  • IEEE Transactions on Parallel and Distributed Systems
  • Ding-Yong Hong +7
  • Research Article
  • Citations5

Dynamic binary translation specialized for embedded systems

  • Mar 17, 2010
  • ACM SIGPLAN Notices
  • Goh Kondoh +1
  • Conference Article
  • Citations16

An LLVM-based hybrid binary translation system

  • Jun 01, 2012
  • Bor-Yeh Shen +3
  • Conference Article
  • Citations27

Acceldroid: Co-designed acceleration of Android bytecode

  • Feb 01, 2013
  • Cheng Wang +2
  • Conference Article

Experiences with interpretation vs. translation in transmeta's code morphing software

  • Jun 07, 2004
  • Dean Deaver
  • Conference Article

Improving Startup Performance in Dynamic Binary Translators

  • Feb 01, 2019
  • Surya Tej Nimmakayala +1
  • Conference Article
  • Citations2

Just-In-Time Java? Compilation for the Itanium® Processor

  • Sep 22, 2002
  • Tatiana Shpeisman +2
  • Research Article
  • Citations3

Low overhead dynamic binary translation on ARM

  • Jun 14, 2017
  • ACM SIGPLAN Notices
  • Amanieu D'Antras +3
  • Research Article
  • Citations78

Java runtime systems: characterization and architectural implications

  • Jan 01, 2001
  • IEEE Transactions on Computers
  • R Radhakrishnan +5
  • Research Article

Condition code optimization in dynamic binary translation

  • Jan 01, 2014
  • Journal of ZheJiang University (Engineering Science)
  • Meng Jian-Yi Wang Rong-Hua
  • Book Chapter

Protecting dynamic code

  • Mar 01, 2018
  • Gang Tan +1
  • Conference Article
  • Citations17

Briki: an optimizing Java compiler

  • Feb 23, 1997
  • M Cierniak +1
  • Research Article
  • Citations13

A fast placement algorithm for embedded just-in-time reconfigurable extensible processing platform

  • Sep 12, 2014
  • The Journal of Supercomputing
  • H. Daryanavard +2
  • Conference Article
  • Citations6

Fog-Assisted Translation: Towards Efficient Software Emulation on Heterogeneous IoT Devices

  • May 01, 2018
  • Vanderson Martins Do Rosario +3
  • PDF
  • Research Article
  • Citations7

Динамическая компиляция выражений в SQL-запросах для СУБД PostgreSQL

  • Jan 01, 2016
  • Proceedings of the Institute for System Programming of the RAS
  • E.Y Sharygin +4
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.