Proceedings of the 6th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems 2011
DOI: 10.1145/2069172.2069181
|View full text |Cite
|
Sign up to set email alerts
|

Runtime feedback in a meta-tracing JIT for efficient dynamic languages

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
26
0

Year Published

2012
2012
2018
2018

Publication Types

Select...
3
2
1

Relationship

2
4

Authors

Journals

citations
Cited by 36 publications
(26 citation statements)
references
References 19 publications
0
26
0
Order By: Relevance
“…By annotating their interpreters with certain hints [5], e.g., for detection of loops in the user-program, language developers can guide tracing and optimization of traces. The traces are then heavily optimized to produce efficient machine code corresponding to the relevant operations performed by the user program.…”
Section: Difference With Meta-tracingmentioning
confidence: 99%
“…By annotating their interpreters with certain hints [5], e.g., for detection of loops in the user-program, language developers can guide tracing and optimization of traces. The traces are then heavily optimized to produce efficient machine code corresponding to the relevant operations performed by the user program.…”
Section: Difference With Meta-tracingmentioning
confidence: 99%
“…Both PyPy and Pyrolog are optimised for meta-tracing, in the sense that their implementation has, where necessary, been structured according to meta-tracings demands. Such structuring is relatively minor (see [7] for more details): most commonly, tracing annotations [4] are added to the interpreter to provide hints (e.g. "this RPython function's loops can safely be unrolled") and guarantees (e.g.…”
Section: Interaction With Meta-tracingmentioning
confidence: 99%
“…A tracing JIT's natural tendency to aggressively typespecialise code (see [4,17]) is important in reducing the overhead of object conversions between interpreters. Tracing a call from one language to the other naturally traces the object conversion code (Section 5.3), type specialising it.…”
Section: Interaction With Meta-tracingmentioning
confidence: 99%
“…Previous implementations have used either static compilers, e.g., Renz's solver [2] and GQR [3], or method-based JIT compilers, e.g., the RCC-8 reasoning module of the description logic reasoner PelletSpatial [4]. The advantage of trace-based JIT compilers is that they can discover optimization opportunities in common dynamic execution paths, that are not apparent to a static compiler or a method-based JIT compiler [10], [11].…”
Section: Pyrcc8 -A State Of the Art Qsrmentioning
confidence: 99%
“…• We make the case for a new generation of RCC-8 reasoners implemented in Python, a general-purpose, interpreted high-level programming language which enables rapid application development, and making use of advanced Python environments, such as PyPy 2 , utilizing trace-based just-in-time (JIT) compilation techniques [10], [11]. We present such a reasoner, called PyRCC8, and compare it to other well-known reasoners from the literature [2]- [4].…”
Section: Introductionmentioning
confidence: 99%