2009
DOI: 10.1007/978-3-642-00722-4_16
|View full text |Cite
|
Sign up to set email alerts
|

Dynamic Look Ahead Compilation: A Technique to Hide JIT Compilation Latencies in Multicore Environment

Abstract: Abstract. Object-code virtualization, commonly used to achieve software portability, relies on a virtual execution environment, typically comprising an interpreter used for initial execution of methods, and a JIT for native code generation. The availability of multiple processors on current architectures makes it attractive to perform dynamic compilation in parallel with application execution. The major issue is to decide at runtime which methods to compile ahead of execution, and how much time to invest in th… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
2
0
4

Year Published

2009
2009
2019
2019

Publication Types

Select...
3
3
2

Relationship

2
6

Authors

Journals

citations
Cited by 15 publications
(6 citation statements)
references
References 20 publications
0
2
0
4
Order By: Relevance
“…Each of the compilation steps is implemented by one or more POSIX threads. This lets ILDJIT decode, optimize and translate one or more methods at the same time while another method is running (this is called dynamic look ahead and is described in [5]). …”
Section: Ildjit (Intermediate Language Distributed Just In Time)mentioning
confidence: 99%
“…Each of the compilation steps is implemented by one or more POSIX threads. This lets ILDJIT decode, optimize and translate one or more methods at the same time while another method is running (this is called dynamic look ahead and is described in [5]). …”
Section: Ildjit (Intermediate Language Distributed Just In Time)mentioning
confidence: 99%
“…While most high level languages include mechanisms for selective compilation which can be exploited for fine tuning the dynamic compilation options, e.g. for hiding compilation latencies [9], the C/C++ applications commonly used in HPC scenarios generally lack this option. Some support is provided by domain-specific tools, such as RuntimeCompiledC++ [10], which focuses on interactive modification and recompilation of program fragments by the programmer.…”
Section: The Antarex Approachmentioning
confidence: 99%
“…um alto overhead ao sistema como um todo. Pesquisadores têm tentado contornar o atraso decorrente da unidade à espera para se tornar região crítica, como é o caso dos trabalhos de Krintz [30], Namjoshi e Kulkarni [58] e Campanoni et al [59], porém com o custo de requerer execução prévia do sistema ou um processador adicional. Com respeito ao atraso decorrente da espera na fila de compilação, diversos trabalhos procuram utilizar prioridades nas threads [60] do compilador [44,43,42,13].…”
Section: Motor De Execuçãounclassified
“…O trabalho de Krintz [30] explora um mecan-ismo em tempo de compilação para detectar previamente as regiões críticas, enquanto que Namjoshi e Kulkarni [58] propuseram uma técnica de predição utilizando um processador adicional. Outra técnica de predição, implementada no trabalho de Campanoni et al [59], procura dar ênfase às unidades mais próximas da unidade em execução atual, julgando-as possuírem maior probabilidade de serem invocados futuramente. Além disso, as arquiteturas multi-core têm sido exploradas ultimamente para manter threads específicas somente para compilar ou executar código.…”
Section: Acionamento Do Sistema De Compilaçãounclassified
See 1 more Smart Citation