Proceedings of the 20th ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation 2011
DOI: 10.1145/1929501.1929508
|View full text |Cite
|
Sign up to set email alerts
|

Allocation removal by partial evaluation in a tracing JIT

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
28
0

Year Published

2012
2012
2017
2017

Publication Types

Select...
3
3
3

Relationship

5
4

Authors

Journals

citations
Cited by 42 publications
(28 citation statements)
references
References 22 publications
0
28
0
Order By: Relevance
“…The PyPy benchmarks are used to measure the performance of PyPy and are composed of a series of microbenchmarks and larger programs. 5 The benchmarks were taken from the PyPy benchmarks repository using revision ff7b35837d0f. 6 The benchmarks were run on a version of PyPy based on revision 0b77afaafdd0 and patched to collect additional data about guards in the machine code backends.…”
Section: Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…The PyPy benchmarks are used to measure the performance of PyPy and are composed of a series of microbenchmarks and larger programs. 5 The benchmarks were taken from the PyPy benchmarks repository using revision ff7b35837d0f. 6 The benchmarks were run on a version of PyPy based on revision 0b77afaafdd0 and patched to collect additional data about guards in the machine code backends.…”
Section: Discussionmentioning
confidence: 99%
“…The other important point of interaction between resume data and the optimizer is RPython's allocation removal optimization [5]. This optimization discovers allocations in the trace that create objects that do not survive long.…”
Section: Interaction With Optimizationmentioning
confidence: 99%
“…In Jit compilation partial evaluation has the potential to both reduce compilation time and increase code quality. This has been demonstrated, for example, in the PyPy Python Jit compiler [6].…”
Section: Related Workmentioning
confidence: 99%
“…Since both integers and floating-point numbers are boxed, unlike in typical Scheme implementations, many of these allocations must be eliminated to obtain high performance. Fortunately, RPython's optimizer is able to see and remove allocations that do not live beyond the scope of a trace (Bolz et al 2011). …”
Section: Allocation Removalmentioning
confidence: 99%