Zur Seitenansicht
 

Titelaufnahme

Titel
Parallel Trace Register Allocation
AutorInnenEisl, Josef ; Leopoldseder, David ; Mössenböck, Hanspeter
Erschienen in
Proceedings of the 15th International Conference on Managed Languages & Runtimes, 2018
Erschienen2018
SpracheEnglisch
SerieManLang '18
DokumenttypAufsatz in einem Sammelwerk
Schlagwörter (EN)trace register allocation / concurrent register allocation / parallel register allocation / just-in-time compilation / dynamic compilation / virtual machines / task scheduling
ISBN9781450364249
URNurn:nbn:at:at-ubl:3-271 Persistent Identifier (URN)
DOI10.1145/3237009.3237010 
Zugriffsbeschränkung
 Das Werk ist gemäß den "Hinweisen für BenützerInnen" verfügbar
Dateien
Parallel Trace Register Allocation [0.46 mb]
Links
Nachweis
Klassifikation
Zusammenfassung (Englisch)

Register allocation is a mandatory task for almost every compiler and consumes a significant portion of compile time. In a just-in-time compiler, compile time is a particular issue because compilation happens during program execution and contributes to the overall application run time. Parallelization can help here. We developed a theoretical model for parallel register allocation and show that it can be used in practice without a negative impact on the quality of the allocation result. Doing so reduces compilation latency, i.e., the duration until the result of a compilation is available.

Our analysis shows that parallelization can theoretically decrease allocation latency by almost 50%. We implemented an initial prototype which reduces the register allocation latency by 28% when using four threads, compared to the single-threaded allocation.

Statistik
Das PDF-Dokument wurde 5 mal heruntergeladen.