Abstract:
Modern virtual machines support a multitier JIT compilation strategy to balance the code quality and compilation time. This strategy brings many benefits to the user. However, it is hard for virtual machine developers to build and maintain multiple compilers in a single managed runtime. In this work-in-progress paper, we describe the problem that occurred by our use of a meta-tracing JIT compiler and propose a solution to it based on our previous work. Our preliminary performance evaluation of the compilation and execution times suggests that the proposed threaded code generation is promising as a lower-tier runtime compiler in a multitier JIT compilation system.
Reference:
Taming an Interpreter for Threaded Code Generation with a Tracing JIT Compiler (Yusuke Izawa and Hidehiko Masuhara), Talk at the Workshop on Implementation, Compilation, Optimization of OO Languages, Programs and Systems (ICOOOLPS'22), 2022.
Bibtex Entry:
@misc{izawa2022icooolps,
author = {Yusuke Izawa and Hidehiko Masuhara},
title = {Taming an Interpreter for Threaded Code Generation with a Tracing {JIT} Compiler},
howpublished = {Talk at the Workshop on Implementation, Compilation, Optimization of OO Languages, Programs and Systems (ICOOOLPS'22)},
month = jun,
url = {https://2022.ecoop.org/details/ICOOOLPS-2022-papers/1/Taming-an-Interpreter-for-Threaded-Code-Generation-with-a-Tracing-JIT-Compiler},
abstract = {Modern virtual machines support a multitier JIT compilation strategy to balance the code quality and compilation time. This strategy brings many benefits to the user. However, it is hard for virtual machine developers to build and maintain multiple compilers in a single managed runtime. In this work-in-progress paper, we describe the problem that occurred by our use of a meta-tracing JIT compiler and propose a solution to it based on our previous work. Our preliminary performance evaluation of the compilation and execution times suggests that the proposed threaded code generation is promising as a lower-tier runtime compiler in a multitier JIT compilation system.},
pdf = {icooolps2022.pdf},
year = 2022
}