Vše

Co hledáte?

Vše
Projekty
Výsledky výzkumu
Subjekty

Rychlé hledání

  • Projekty podpořené TA ČR
  • Významné projekty
  • Projekty s nejvyšší státní podporou
  • Aktuálně běžící projekty

Chytré vyhledávání

  • Takto najdu konkrétní +slovo
  • Takto z výsledků -slovo zcela vynechám
  • “Takto můžu najít celou frázi”

A Pragmatic Approach to Replay Compilation

Identifikátory výsledku

  • Kód výsledku v IS VaVaI

    <a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F00216208%3A11320%2F25%3A10503596" target="_blank" >RIV/00216208:11320/25:10503596 - isvavai.cz</a>

  • Výsledek na webu

    <a href="https://doi.org/10.4230/OASIcs.Programming.2025.3" target="_blank" >https://doi.org/10.4230/OASIcs.Programming.2025.3</a>

  • DOI - Digital Object Identifier

    <a href="http://dx.doi.org/10.4230/OASIcs.Programming.2025.3" target="_blank" >10.4230/OASIcs.Programming.2025.3</a>

Alternativní jazyky

  • Jazyk výsledku

    angličtina

  • Název v původním jazyce

    A Pragmatic Approach to Replay Compilation

  • Popis výsledku v původním jazyce

    Dynamic compilers generate code based on the information provided by the virtual machine (VM) running the corresponding application. Due to the environment&apos;s non-deterministic nature, every compilation result is typically unique. This is a problem when reproducibility is desired, such as when debugging a crash of the JIT compiler or diagnosing performance problems. As a solution, we present a pragmatic approach to replay compilation that is suitable for integration in a production-grade VM. Our approach is based on instrumenting the VM&apos;s compiler interface, allowing us to record the compiler&apos;s queries and their results to the VM. We serialize them and use them to replicate the compiler&apos;s query results in a replayed compilation. Assuming the compiler is deterministic, this approach systematically ensures that the replayed compilation result is equivalent to the recorded one. The dynamic compiler is invoked directly without the need to execute the original application. A compiler developer can replay a compilation with additional diagnostic options or evaluate metrics such as compilation speed. We developed a working prototype for GraalVM, showing that replay compilation can be implemented without requiring extensive compiler or VM changes. We are working with the GraalVM developers to integrate it into the open-source compiler to unlock these benefits and new use cases for the community.

  • Název v anglickém jazyce

    A Pragmatic Approach to Replay Compilation

  • Popis výsledku anglicky

    Dynamic compilers generate code based on the information provided by the virtual machine (VM) running the corresponding application. Due to the environment&apos;s non-deterministic nature, every compilation result is typically unique. This is a problem when reproducibility is desired, such as when debugging a crash of the JIT compiler or diagnosing performance problems. As a solution, we present a pragmatic approach to replay compilation that is suitable for integration in a production-grade VM. Our approach is based on instrumenting the VM&apos;s compiler interface, allowing us to record the compiler&apos;s queries and their results to the VM. We serialize them and use them to replicate the compiler&apos;s query results in a replayed compilation. Assuming the compiler is deterministic, this approach systematically ensures that the replayed compilation result is equivalent to the recorded one. The dynamic compiler is invoked directly without the need to execute the original application. A compiler developer can replay a compilation with additional diagnostic options or evaluate metrics such as compilation speed. We developed a working prototype for GraalVM, showing that replay compilation can be implemented without requiring extensive compiler or VM changes. We are working with the GraalVM developers to integrate it into the open-source compiler to unlock these benefits and new use cases for the community.

Klasifikace

  • Druh

    D - Stať ve sborníku

  • CEP obor

  • OECD FORD obor

    10201 - Computer sciences, information science, bioinformathics (hardware development to be 2.2, social aspect to be 5.8)

Návaznosti výsledku

  • Projekt

  • Návaznosti

    S - Specificky vyzkum na vysokych skolach

Ostatní

  • Rok uplatnění

    2025

  • Kód důvěrnosti údajů

    S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů

Údaje specifické pro druh výsledku

  • Název statě ve sborníku

    Companion Proceedings of the 9th International Conference on the Art, Science, and Engineering of Programming (Programming 2025)

  • ISBN

    978-3-95977-382-9

  • ISSN

    2190-6807

  • e-ISSN

  • Počet stran výsledku

    4

  • Strana od-do

    1-4

  • Název nakladatele

    Schloss Dagstuhl, Leibniz-Zentrum für Informatik

  • Místo vydání

    Wadern

  • Místo konání akce

    Praha

  • Datum konání akce

    2. 6. 2025

  • Typ akce podle státní příslušnosti

    WRD - Celosvětová akce

  • Kód UT WoS článku