...
首页> 外文期刊>Computer Languages, Systems & Structures >A flexible framework for studying trace-based just-in-time compilation
【24h】

A flexible framework for studying trace-based just-in-time compilation

机译:研究基于跟踪的即时编译的灵活框架

获取原文
获取原文并翻译 | 示例

摘要

Just-in-time compilation has proven an effective, though effort-intensive, choice for realizing performant language runtimes. Recently introduced JIT compilation frameworks advocate applying meta-compilation techniques such as partial evaluation or meta-tracing on simple interpreters to reduce the implementation effort. However, such frameworks are few and far between. Designed and highly optimized for performance, they are difficult to experiment with. We therefore present STRAF, a minimalistic yet flexible Scala framework for studying trace-based JIT compilation. STRAF is sufficiently general to support a diverse set of language interpreters, but also sufficiently extensible to enable experiments with trace recording and optimization. We demonstrate the former by plugging two different interpreters into STRAF. We demonstrate the latter by extending STRAF with e.g., constant folding and type-specialization optimizations, which are commonly found in dedicated trace-based JIT compilers. The evaluation shows that STRAF is suitable for prototyping new techniques and formalisms in the domain of trace-based JIT compilation. (C) 2017 Elsevier Ltd. All rights reserved.
机译:实时编译已证明是实现高性能语言运行时的有效选择,尽管工作量很大。最近引入的JIT编译框架主张在简单的解释器上应用元编译技术(例如部分评估或元跟踪)以减少实现工作。但是,这样的框架很少而且相差很远。设计和高度优化的性能,它们很难尝试。因此,我们提出了STRAF,这是一个用于研究基于跟踪的JIT编译的简约但灵活的Scala框架。 STRAF具有足够的通用性,可以支持多种语言解释程序,但也具有足够的可扩展性,可以进行带有跟踪记录和优化的实验。我们通过将两个不同的口译员插入STRAF来演示前者。我们通过使用恒定折叠和类型专业优化等扩展STRAF来演示后者,这在基于跟踪的专用JIT编译器中很常见。评估显示,STRAF适合在基于跟踪的JIT编译领域中对新技术和形式主义进行原型设计。 (C)2017 Elsevier Ltd.保留所有权利。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号