On Automating Hybrid Execution of Ahead-of-Time and Just-in-Time Compiled Code

被引:0
|
作者
Pichler, Christoph [1 ]
Li, Paley [2 ]
Schatz, Roland [3 ]
Mossenbock, Hanspeter [1 ]
机构
[1] Johannes Kepler Univ Linz, Linz, Austria
[2] Oracle Labs, Prague, Czech Republic
[3] Oracle Labs, Linz, Austria
关键词
ahead-of-time; just-in-time; virtual machine; performance;
D O I
10.1145/3689490.3690398
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
The divergence between Ahead-of-Time (AOT) and Just-in-Time (JIT) compilation techniques presents a unique predicament when trying to achieve optimal performance in software applications. AOT compilation offers efficiency by pre-compiling and optimizing code, while JIT compilation enhances peak performance through dynamic optimization and speculation. However, the improved peak performance achieved by JIT compilation is offset by the poor warm-up performance due to the overhead caused by analyses and optimizations at run time. Previously, we proposed blending these two compilation techniques, aiming to maintain high peak performance while enhancing warm-up performance. Since the programmer had to manually select functions for AOT compilation, it required familiarity with the code base and with compilers in general. This paper presents a strategy for blending these two compilation techniques automatically. We provide an overviewof language implementation features which have to be considered when implementing such an automated approach. We also propose a call-graph based analysis when determining whether certain code should be replaced by its AOT-compiled equivalent. We implemented our approach within GraalVM, a multi-language virtualmachine based on the Java HotSpot VM. The results from different benchmarks show our approach leads to a speedup of 1.48x on average for data setup and up to 2.6x for warm-up and 3.5x for peak performance. Moreover, our automated approach is able to find optimizations which have easily been missed by manual annotations.
引用
收藏
页码:1 / 11
页数:11
相关论文
共 50 条
  • [21] Just-in-time
    EP Electronic Production (London), 1998, 27 (04):
  • [22] Mining Opportunities for Code Improvement in a Just-In-Time Compiler
    Jocksch, Adam
    Mitran, Marcel
    Siu, Joran
    Grcevski, Nikola
    Amaral, Jose Nelson
    COMPILER CONSTRUCTION, PROCEEDINGS, 2010, 6011 : 10 - +
  • [23] Just-in-time knowledge for effective Hybrid learning
    Desmarais, Michel C.
    HYBRID LEARNING AND EDUCATION, PROCEEDINGS, 2008, 5169 : 31 - 39
  • [24] Kernel Protection Against Just-In-Time Code Reuse
    Pomonis, Marios
    Petsios, Theofilos
    Keromytis, Angelos D.
    Polychronakis, Michalis
    Kemerlis, Vasileios P.
    ACM TRANSACTIONS ON PRIVACY AND SECURITY, 2019, 22 (01)
  • [25] Ahead-of-time debugging, or programming not in the dark
    Snell, JL
    EIGHTH IEEE INTERNATIONAL WORKSHOP ON SOFTWARE TECHNOLOGY AND ENGINEERING PRACTICE INCORPORATING COMPUTER AIDED SOFTWARE ENGINEERING, PROCEEDINGS, 1997, : 288 - 293
  • [26] A selective ahead-of-time compiler on android device
    Lim, Yeong-Kyu
    Parambil, Sharfudheen
    Kim, Cheong-Ghil
    Lee, See-Hyung
    2012 International Conference on Information Science and Applications, ICISA 2012, 2012,
  • [27] Real-time drilling torque prediction ahead of the bit with just-in-time learning
    Bai, Kan-Kan
    Sheng, Mao
    Zhang, Hong-Bao
    Fan, Hong-Hai
    Pan, Shao-Wei
    PETROLEUM SCIENCE, 2025, 22 (01) : 430 - 441
  • [28] Improving Waiting Time for Chemotherapy with Ahead-of-Time Drug Preparation
    Marcos Descalzo, Juan
    Ludmila Frutos, Eliana
    Castro, Javier
    Regia Lombardo, Victoria
    Gimenez, Cintia
    Otero, Paula
    Luna, Daniel
    Otero, Carlos
    MEDINFO 2023 - THE FUTURE IS ACCESSIBLE, 2024, 310 : 144 - 148
  • [29] Real-time drilling torque prediction ahead of the bit with just-in-time learning
    KanKan Bai
    Mao Sheng
    HongBao Zhang
    HongHai Fan
    ShaoWei Pan
    Petroleum Science, 2025, 22 (01) : 430 - 441
  • [30] ThriveJIT: Dynamic Just-In-Time Compilation for Efficient Execution of Arithmetic Expressions
    Amrita Vishwa Vidyapeetham, Amrita School of Computing, Dept. of Computer Science and Engineering, Bengaluru, India
    Int. Conf. Comput. Commun. Netw. Technol., ICCCNT,