2005
DOI: 10.1145/1075382.1075386
|View full text |Cite
|
Sign up to set email alerts
|

Design and evaluation of dynamic optimizations for a Java just-in-time compiler

Abstract: The high performance implementation of Java Virtual Machines (JVM) and Just-In-Time (JIT) compilers is directed toward employing a dynamic compilation system on the basis of online runtime profile information. The trade-off between the compilation overhead and performance benefit is a crucial issue for such a system. This article describes the design and implementation of a dynamic optimization framework in a production-level Java JIT compiler, together with two techniques for profile-directed optimizations: m… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
30
0
2

Year Published

2007
2007
2017
2017

Publication Types

Select...
6
3
1

Relationship

0
10

Authors

Journals

citations
Cited by 42 publications
(32 citation statements)
references
References 41 publications
0
30
0
2
Order By: Relevance
“…Dynamic or online profiling collects profile information during the same program run, and is commonly employed by advanced managed language run-times, like those for Java [Paleczny et al, 2001, Arnold et al, 2011, Suganuma et al, 2005, Cierniak et al, 2000. Researchers have also developed static analysis techniques to estimate some run-time information for PGOs [Wu & Larus, 1994].…”
Section: Background and Related Workmentioning
confidence: 99%
“…Dynamic or online profiling collects profile information during the same program run, and is commonly employed by advanced managed language run-times, like those for Java [Paleczny et al, 2001, Arnold et al, 2011, Suganuma et al, 2005, Cierniak et al, 2000. Researchers have also developed static analysis techniques to estimate some run-time information for PGOs [Wu & Larus, 1994].…”
Section: Background and Related Workmentioning
confidence: 99%
“…These statistical and probabilistic information can be obtained using edge profiling [15][16][17][18] . In absence of edge profiling, heuristics can be used.…”
Section: Motivationmentioning
confidence: 99%
“…A technique known as statistical sampling that is based on profiling mitigates data collection overheads by capturing a subset of events. Statistical sampling involves periodically sampling system counters.Performance tools such as PerfSuite [44], VTune [67], HPCToolkit [38], and JRockit [52] collect performance data using statistical sampling. A drawback of statistical sampling is that the performance data can be less precise and complete compared to tracing.…”
Section: Performance Monitoring and Analysis Toolsmentioning
confidence: 99%