All

What are you looking for?

All
Projects
Results
Organizations

Quick search

  • Projects supported by TA ČR
  • Excellent projects
  • Projects with the highest public support
  • Current projects

Smart search

  • That is how I find a specific +word
  • That is how I leave the -word out of the results
  • “That is how I can find the whole phrase”

Sampling optimized code for type feedback

The result's identifiers

  • Result code in IS VaVaI

    <a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F68407700%3A21240%2F20%3A00347259" target="_blank" >RIV/68407700:21240/20:00347259 - isvavai.cz</a>

  • Result on the web

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

  • DOI - Digital Object Identifier

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

Alternative languages

  • Result language

    angličtina

  • Original language name

    Sampling optimized code for type feedback

  • Original language description

    To efficiently execute dynamically typed languages, many language implementations have adopted a two-tier architecture. The first tier aims for low-latency startup times and collects dynamic profiles, such as the dynamic types of variables. The second tier provides high-throughput using an optimizing compiler that specializes code to the recorded type information. If the program behavior changes to the point that not previously seen types occur in specialized code, that specialized code becomes invalid, it is deoptimized, and control is transferred back to the first tier execution engine which will start specializing anew. However, if the program behavior becomes more specific, for instance, if a polymorphic variable becomes monomorphic, nothing changes. Once the program is running optimized code, there are no means to notice that an opportunity for optimization has been missed. We propose to employ a sampling-based profiler to monitor native code without any instrumentation. The absence of instrumentation means that when the profiler is not active, no overhead is incurred. We present an implementation is in the context of the A just-in-time, optimizing compiler for the R language. Based on the sampled profiles, we are able to detect when the native code produced by A is specialized for stale type feedback and recompile it to more type-specific code. We show that sampling adds an overhead of less than 3 2020 ACM.

  • Czech name

  • Czech description

Classification

  • Type

    D - Article in proceedings

  • CEP classification

  • OECD FORD branch

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

Result continuities

  • Project

    <a href="/en/project/EF15_003%2F0000421" target="_blank" >EF15_003/0000421: Big Code: Scalable Analysis of Massive Code Bases</a><br>

  • Continuities

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

Others

  • Publication year

    2020

  • Confidentiality

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

Data specific for result type

  • Article name in the collection

    DSL_Proceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages

  • ISBN

    978-1-4503-8175-8

  • ISSN

  • e-ISSN

  • Number of pages

    13

  • Pages from-to

    99-111

  • Publisher name

    ACM

  • Place of publication

    New York

  • Event location

    virtual

  • Event date

    Nov 15, 2020

  • Type of event by nationality

    WRD - Celosvětová akce

  • UT code for WoS article