Mitigating JIT compilation latency in Virtual Execution Environments
MetadataShow full item record
Altmetrics Handle Statistics
Altmetrics DOI Statistics
Many Virtual Execution Environments (VEEs) rely on Justin-time (JIT) compilation technology for code generation at runtime, e.g. in Dynamic Binary Translation (DBT) systems or language Virtual Machines (VMs). While JIT compilation improves native execution performance as opposed to e.g. interpretive execution, the JIT compilation process itself introduces latency. In fact, for highly optimizing JIT compilers or compilers not specifically designed for JIT compilation, e.g. LLVM, this latency can cause a substantial overhead. While existing work has introduced asynchronously decoupled JIT compilation task farms to hide this JIT compilation latency, we show that this on its own is not sufficient to mitigate the impact of JIT compilation latency on overall performance. In this paper, we introduce a novel JIT compilation scheduling policy, which performs continuous low-cost profiling of code regions already dispatched for JIT compilation, right up to the point where compilation commences. We have integrated our novel JIT compilation scheduling approach into a commercial LLVM-based DBT system and demonstrate speedups of 1.32× on average, and up to 2.31×, over its state-of-the-art concurrent task-farm based JIT compilation scheme across the SPEC CPU2006 and BioPerf benchmark suites.
Kristien , M , Spink , T , Wagstaff , H , Franke , B , Boehm , I & Topham , N 2019 , Mitigating JIT compilation latency in Virtual Execution Environments . in Proceedings of the 15th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments . ACM , pp. 101–107 , 15th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments , United States , 14/04/19 . https://doi.org/10.1145/3313808.3313818conference
Proceedings of the 15th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments
Copyright © 2019 Copyright held by the owner/author(s). Publication rights licensed to ACM. This work has been made available online in accordance with publisher policies or with permission. Permission for further reuse of this content should be sought from the publisher or the rights holder. This is the author created accepted manuscript following peer review and may differ slightly from the final published version. The final published version of this work is available at https://doi.org/10.1145/3313808.3313818.
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.