Deegen: a meta-compiler approach for high performance VMs at low engineering cost
Building a high-performance VM for a dynamic language has traditionally required a huge amount of time, money, and expertise. To reduce the high engineering cost, we present Deegen, a meta-compiler that generates a high-performance VM automatically from a semantical description of the bytecodes. Currently, Deegen is capable of automatically generating an optimized interpreter and baseline JIT compiler. This allows the user get a high-performance VM for their own language at an engineering cost similar to writing an interpreter. To demonstrate Deegen’s capability in the real world, we implemented LuaJIT Remake (LJR), a standard-compliant VM for Lua 5.1. Across a variety of benchmarks, we demonstrated that LJR’s interpreter significantly outperforms LuaJIT’s interpreter, and LJR’s baseline JIT generates high-quality code with a negligible compilation cost.
Mon 17 JulDisplayed time zone: Pacific Time (US & Canada) change
08:30 - 10:00 | Session 1ICOOOLPS at Smith Classroom (Gates G10) Chair(s): Dimi Racordon Northeastern University, USA | ||
08:45 15mCoffee break | Welcome and Introduction ICOOOLPS Dimi Racordon Northeastern University, USA | ||
09:00 60mTalk | Deegen: a meta-compiler approach for high performance VMs at low engineering cost ICOOOLPS Haoran Xu Stanford University |