HYBRID JAVA']JAVA COMPILATION OF JUST-IN-TIME AND AHEAD-OF TIME FOR EMBEDDED SYSTEMS

被引:0
作者
Oh, Hyeong-Seok [1 ]
Moon, Soo-Mook [1 ]
Jung, Dong-Heon [1 ]
机构
[1] Seoul Natl Univ, Sch Elect Engn & Comp Sci, Seoul 151742, South Korea
基金
新加坡国家研究基金会;
关键词
Hybrid [!text type='Java']Java[!/text] compilation; ahead-of-time compiler; just-in-time compiler; JVM; VIRTUAL MACHINE;
D O I
10.1142/S0218126612400014
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Many embedded Java software platforms execute two types of Java classes: those installed statically on the client device and those downloaded dynamically from service providers at runtime. For higher performance, it would be desirable to compile static Java classes by ahead-of-time compiler (AOTC) and to handle dynamically downloaded classes by just-in-time compiler (JITC), providing a hybrid compilation environment. This paper proposes a hybrid Java compilation approach and performs an initial case study with a hybrid environment, which is constructed simply by merging an existing AOTC and a JITC for the same Java virtual machine. Both compilers are developed independently for their own performance advantages with a generally accepted approach of compilation, but we merged them as effciently as possible. Contrary to our expectations, the hybrid environment does not deliver a performance, in-between of full-JITC's and full-AOTC's. In fact, its performance is even lower than full-JITC's for many benchmarks. We analyzed the result and found that a naive merge of JITC and AOTC may result in ineffciencies, especially due to calls between JITC methods and AOTC methods. Based on these observations, we propose some ideas to reduce such a call overhead. We also observed that the distribution of JITC methods and AOTC methods is also important, and experimented with various distributions to understand when a hybrid environment can deliver a desired performance. Finally, we discuss how JITC and AOTC should be designed for efficient hybrid execution.
引用
收藏
页数:22
相关论文
共 35 条
  • [21] TASTYTRUFFLE: Just-in-Time Specialization of Parametric Polymorphism
    D'Souza, Matt
    You, James
    Lhotak, Ondrej
    Prokopec, Aleksandar
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (OOPSLA): : 1561 - 1588
  • [22] Wcet Predictable Exception Mechanism For Real-Time Java']Java Platform
    Gao Zhen-Hua
    Yang Fan
    Chai Zhi-Lei
    2012 INTERNATIONAL CONFERENCE ON INDUSTRIAL CONTROL AND ELECTRONICS ENGINEERING (ICICEE), 2012, : 1713 - 1716
  • [23] A real-time Java']Java tool chain for resource constrained platforms
    Korsholm, Stephan E.
    Sondergaard, Hans
    Ravn, Anders P.
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2014, 26 (14) : 2407 - 2431
  • [24] A Novel Lightweight Instruction Scheduling Algorithm for Just-In-Time Compiler
    Shi, Xiaohua
    Guo, Peng
    2009 WRI WORLD CONGRESS ON SOFTWARE ENGINEERING, VOL 3, PROCEEDINGS, 2009, : 73 - +
  • [25] HOPE: A Python']Python just-in-time compiler for astrophysical computations
    Akeret, J.
    Gamper, L.
    Amara, A.
    Refregier, A.
    ASTRONOMY AND COMPUTING, 2015, 10 : 1 - 8
  • [26] Safe and Atomic Run-time Code Evolution for Java']Java and its Application to Dynamic AOP
    Wuerthinger, Thomas
    Ansaloni, Danilo
    Binder, Walter
    Wimmer, Christian
    Moessenboeck, Hanspeter
    OOPSLA 11: PROCEEDINGS OF THE 2011 ACM INTERNATIONAL CONFERENCE ON OBJECT ORIENTED PROGRAMMING SYSTEMS LANGUAGES AND APPLICATIONS, 2011, : 825 - 844
  • [27] Safe and Atomic Run-time Code Evolution for Java']Java and its Application to Dynamic AOP
    Wuerthinger, Thomas
    Ansaloni, Danilo
    Binder, Walter
    Wimmer, Christian
    Moessenboeck, Hanspeter
    ACM SIGPLAN NOTICES, 2011, 46 (10) : 825 - 844
  • [28] eJS']JSTK: Building Java']JavaScript virtual machines with customized datatypes for embedded systems
    Ugawa, Tomoharu
    Iwasaki, Hideya
    Kataoka, Takafumi
    JOURNAL OF COMPUTER LANGUAGES, 2019, 51 : 261 - 279
  • [29] Just-in-time server procurement to private cloud for mobile thin-client service
    Machida, Fumio
    Kohno, Shunsuke
    Maebara, Kosuke
    Nakagawa, Masayuki
    2015 11TH INTERNATIONAL CONFERENCE ON NETWORK AND SERVICE MANAGEMENT (CNSM), 2015, : 261 - 264
  • [30] Profile Guided Offline Optimization of Hidden Class Graphs for Java']JavaScript VMs in Embedded Systems
    Ugawa, Tomoharu
    Marr, Stefan
    Jones, Richard
    PROCEEDINGS OF THE 14TH ACM SIGPLAN INTERNATIONAL WORKSHOP ON VIRTUAL MACHINES AND INTERMEDIATE LANGUAGES, VMIL 2022, 2022, : 25 - 35