STRAF: A Scala Framework for Experiments in Trace-Based JIT Compilation

Research output: Chapter in Book/Report/Conference proceedingMeeting abstract (Book)

196 Downloads (Pure)

Abstract

We introduce straf, a Scala framework for recording and optimizing execution traces of an interpreter it is composed with. For interpreters that satisfy the requirements detailed in this paper, this composition requires but a small effort from the implementer to result in a trace-based JIT compiler. We describe the framework, and illustrate its composition with a Scheme interpreter that satisfies the aforementioned requirements. We benchmark the resulting trace-based JIT compiler on a set of Scheme programs. Finally, we implement an optimization to demonstrate that straf enables further experimentation in the domain.

Translated title of the contributionSTRAF: Een Scala Framework voor Experimentatie in Trace-Based JIT Compilatie
Original languageEnglish
Title of host publicationGrand Timely Topics in Software Engineering - International Summer School GTTSE 2015, Tutorial Lectures
EditorsJacome Cunha, Vadim Zaytsev, Ralf Lammel, Joao Saraiva, Joao P. Fernandes
Pages223-234
Number of pages12
ISBN (Electronic)978-3-319-60074-1
DOIs
Publication statusPublished - 29 Jun 2017
EventGTTSE 2015 Summer School: Grand Timely Topics in Software Engineering - Braga, Portugal
Duration: 23 Aug 201529 Aug 2015
http://gttse.wikidot.com/

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume10223 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Other

OtherGTTSE 2015 Summer School
Country/TerritoryPortugal
CityBraga
Period23/08/1529/08/15
Internet address

Keywords

  • Execution traces
  • JIT compilation
  • Scala
  • Tracing compilation

Fingerprint

Dive into the research topics of 'STRAF: A Scala Framework for Experiments in Trace-Based JIT Compilation'. Together they form a unique fingerprint.

Cite this