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”

Reusing Just-in-Time Compiled Code

Identifikátory výsledku

  • Kód výsledku v IS VaVaI

    <a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F68407700%3A21240%2F23%3A00371228" target="_blank" >RIV/68407700:21240/23:00371228 - isvavai.cz</a>

  • Výsledek na webu

    <a href="https://doi.org/10.1145/3622839" target="_blank" >https://doi.org/10.1145/3622839</a>

  • DOI - Digital Object Identifier

    <a href="http://dx.doi.org/10.1145/3622839" target="_blank" >10.1145/3622839</a>

Alternativní jazyky

  • Jazyk výsledku

    angličtina

  • Název v původním jazyce

    Reusing Just-in-Time Compiled Code

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

    Most code is executed more than once. If not entire programs then libraries remain unchanged from one run to the next. Just-in-time compilers expend considerable effort gathering insights about code they compiled many times, and often end up generating the same binary over and over again. We explore how to reuse compiled code across runs of different programs to reduce warm-up costs of dynamic languages. We propose to use speculative contextual dispatch to select versions of functions from an off-line curated code repository. That repository is a persistent database of previously compiled functions indexed by the context under which they were compiled. The repository is curated to remove redundant code and to optimize dispatch. We assess practicality by extending Ř, a compiler for the R language, and evaluating its performance. Our results suggest that the approach improves warmup times while preserving peak performance.

  • Název v anglickém jazyce

    Reusing Just-in-Time Compiled Code

  • Popis výsledku anglicky

    Most code is executed more than once. If not entire programs then libraries remain unchanged from one run to the next. Just-in-time compilers expend considerable effort gathering insights about code they compiled many times, and often end up generating the same binary over and over again. We explore how to reuse compiled code across runs of different programs to reduce warm-up costs of dynamic languages. We propose to use speculative contextual dispatch to select versions of functions from an off-line curated code repository. That repository is a persistent database of previously compiled functions indexed by the context under which they were compiled. The repository is curated to remove redundant code and to optimize dispatch. We assess practicality by extending Ř, a compiler for the R language, and evaluating its performance. Our results suggest that the approach improves warmup times while preserving peak performance.

Klasifikace

  • Druh

    J<sub>SC</sub> - Článek v periodiku v databázi SCOPUS

  • 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

    <a href="/cs/project/GX23-07580X" target="_blank" >GX23-07580X: Rigorous Engineering of Data Analysis Pipelines (RiGiD)</a><br>

  • Návaznosti

    P - Projekt vyzkumu a vyvoje financovany z verejnych zdroju (s odkazem do CEP)

Ostatní

  • Rok uplatnění

    2023

  • 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 periodika

    Proceedings of the ACM on Programming Languages (PACMPL)

  • ISSN

    2475-1421

  • e-ISSN

    2475-1421

  • Svazek periodika

    7

  • Číslo periodika v rámci svazku

    OOPSLA2

  • Stát vydavatele periodika

    US - Spojené státy americké

  • Počet stran výsledku

    22

  • Strana od-do

    1176-1197

  • Kód UT WoS článku

    001087279100043

  • EID výsledku v databázi Scopus

    2-s2.0-85175001675