Augmenting Java']JavaScript JIT with Ahead-of-Time Compilation

被引:0
|
作者
Zhuykov, Roman [1 ]
Vardanyan, Vahagn [1 ]
Melnik, Dmitry [1 ]
Buchatskiy, Ruben [1 ]
Sharygin, Eugeniy [1 ]
机构
[1] Russian Acad Sci, Inst Syst Programming, Alexander Solzhenitsyn St 25, Moscow, Russia
关键词
!text type='Java']Java[!/text]Script; JIT; Ahead-of-Time Compilation; !text type='Java']Java[!/text]ScriptCore; WebKit;
D O I
暂无
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Modern JavaScript engines use just-in-time (JIT) compilation to produce a binary code. JIT compilers are limited in a complexity of optimizations they can perform at a runtime without delaying an execution. On the contrary, ahead-of-time (AOT) compilers don't have such limitations, but they are not well suited for compiling dynamic languages such as JavaScript. In the paper we discuss methods for augmenting multi-tiered JavaScript JIT with a capability for AOT compilation, so to reduce program startup time and to move complex optimizations to AOT phase. We have implemented saving of JavaScript programs as a binary package containing bytecode and native code in open-source WebKit library. Our implementation allows shipping of JavaScript programs not only as a source code, but also as application binary packages with a precompiled code. In addition, our approach does not require any language feature restrictions. This has resulted in performance gain for popular JavaScript benchmarks such as SunSpider and Kraken on ARM platform, however, at a cost of increased package size.
引用
下载
收藏
页码:116 / 120
页数:5
相关论文
共 50 条
  • [1] Ahead-of-time compilation of Java']JavaScript programs
    Zhuykov, R.
    Sharygin, E.
    PROGRAMMING AND COMPUTER SOFTWARE, 2017, 43 (01) : 51 - 59
  • [2] Reusing the Optimized Code for Java']JavaScript Ahead-of-Time Compilation
    Park, Hyukwoo
    Kim, Sungkook
    Park, Jung-Geun
    Moon, Soo-Mook
    ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2019, 15 (04)
  • [3] Java']JavaScript Ahead-of-Time Compilation for Embedded Web Platform
    Park, HyukWoo
    Jung, Wonki
    Moon, Soo-Mook
    2015 13TH IEEE SYMPOSIUM ON EMBEDDED SYSTEMS FOR REAL-TIME MULTIMEDIA, 2015, : 49 - 57
  • [4] Ahead-of-time compilation of JavaScript programs
    R. Zhuykov
    E. Sharygin
    Programming and Computer Software, 2017, 43 : 51 - 59
  • [5] Work-in-Progress: Advanced Ahead-of-Time Compilation for Java']JavaScript Engine
    Park, HyukWoo
    Kim, SungKook
    Moon, Soo-Mook
    2017 INTERNATIONAL CONFERENCE ON COMPILERS, ARCHITECTURES AND SYNTHESIS FOR EMBEDDED SYSTEMS (CASES), 2017,
  • [6] On real-time performance of ahead-of-time compiled Java']Java
    Nilsson, A
    Robertz, SG
    ISORC 2005: Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, Proceedings, 2005, : 372 - 381
  • [7] Java']Java client ahead-of-time compiler for embedded systems
    Hong, Sunghyun
    Kim, Jin-Chul
    Shin, Jin Woo
    Moon, Soo-Mook
    Oh, Hyeong-Seok
    Lee, Jaemok
    Choi, Hyung-Kyu
    ACM SIGPLAN NOTICES, 2007, 42 (07) : 63 - 72
  • [8] Evaluation of a Java']Java Ahead-of-Time Compiler for Embedded Systems
    Jung, Dong-Heon
    Moon, Soo-Mook
    Bae, Sung-Hwan
    COMPUTER JOURNAL, 2012, 55 (02): : 232 - 252
  • [9] Loop transformations in the ahead-of-time optimization of Java']Java bytecode
    Hammond, Simon
    Lacey, David
    COMPILER CONSTRUCTION, PROCEEDINGS, 2006, 3923 : 109 - 123
  • [10] Client ahead-of-time compiler for embedded Java']Java platforms
    Hong, Sunghyun
    Kim, Jin-Chul
    Moon, Soo-Mook
    Shin, Jin Woo
    Lee, Jaemok
    Oh, Hyeong-Seok
    Choi, Hyung-Kyu
    SOFTWARE-PRACTICE & EXPERIENCE, 2009, 39 (03): : 259 - 278