Accelerate RISC-V Instruction Set Simulation by Tiered JIT Compilation
The rising prominence of the RISC-V instruction set architecture has spurred the development of instruction set simulators (ISS), which are crucial for early-stage architecture evaluation and software development. This paper introduces a practical approach to RISC-V ISS using tiered just-in-time (JIT) compilation, a technique commonly employed in high-level language virtual machines but rarely applied to ISS. Our simulator utilizes this strategy to outperform existing open-source simulators in speed and efficiency, quickly executing the initial instruction.
This method incorporates an interpreter for initial execution and profiling, a lightweight tier-1 compiler for moderate enhancements, and an aggressive tier-2 compiler for frequently executed code paths. This balanced approach ensures rapid compilation and detailed refinement, resulting in superior performance across various RISC-V workloads. The paper addresses prevalent challenges in dynamic binary translation, such as indirect jumps and excessive translation times, by introducing innovative solutions and providing an extensive impact analysis.
Sun 20 OctDisplayed time zone: Pacific Time (US & Canada) change
09:00 - 10:30 | |||
09:00 10mDay opening | Opening Remarks VMIL | ||
09:15 30mResearch paper | Accelerate RISC-V Instruction Set Simulation by Tiered JIT Compilation VMIL Yen-Fu Chen National Cheng Kung University, Meng-Hung Chen National Cheng Kung University, Ching-Chun Huang National Cheng Kung University, Chia-Heng Tu National Cheng Kung University DOI File Attached | ||
09:45 30mResearch paper | An Analysis of Compiled Code Reusability in Dynamic Compilation VMIL Andrej Pečimúth Oracle Labs; Charles University, David Leopoldseder Oracle Labs, Petr Tuma Charles University DOI Pre-print | ||
10:15 15mExperience report | Inlined Code Generation for Smalltalk VMIL Dave Mason Toronto Metropolitan University (formerly Ryerson University), Daniel Franklin Toronto Metropolitan University File Attached |