使用 Druid 对基线 JIT 编译器进行元编译

主要观点:虚拟机结合了解释器和即时编译(JIT)代码以获良好性能,但不同执行引擎增加开发维护成本,基于元编译的 JIT 编译器可自动生成优化的 JIT 编译器,本文提出 Druid 这一从解释器生成基线 JIT 编译器前端的提前自动方法,语言开发者通过注释解释器代码和使用 Druid 内在函数引导元编译,目标是现有 JIT 编译器基础架构以实现良好的预热性能。
关键信息:2025 年《编程艺术、科学与工程》第 10 卷第 1 期第 9 篇文章,提交日期 2024 - 09 - 30,出版日期 2025 - 02 - 15,DOI 为[https://doi.org/10.22152/prog...],全文 PDF 为[https://arxiv.org/pdf/2502.20...],在 Pharo 编程语言环境中应用 Druid 并与生产中的 JIT 编译器前端比较,生成的 JIT 编译器前端比解释器快 2 倍,平均达到手写 JIT 编译器性能的 0.7 倍,实验仅需在解释器中更改 60 个调用点。
重要细节:作者包括 Nahuel Palumbo、Guillermo Polito、Stéphane Ducasse 和 Pablo Tesone,分别来自法国的相关机构,都有 Orcid 标识及对应的链接,Druid 可使语言虚拟机更易维护和演进。

阅读 9
0 条评论