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 条
[31]   Improved Ahead-of-time Compilation of Stack-based JVM Bytecode on Resource-constrained Devices [J].
Reijers, Niels ;
Shih, Chi-Sheng .
ACM TRANSACTIONS ON SENSOR NETWORKS, 2019, 15 (03)
[32]   Separate compilation of hierarchical real-time programs into linear-bounded Embedded Machine code [J].
Ghosal, Arkadeb ;
Iercan, Daniel ;
Kirsch, Christoph M. ;
Henzinger, Thomas A. ;
Sangiovanni-Vincentelli, Alberto .
SCIENCE OF COMPUTER PROGRAMMING, 2012, 77 (02) :96-112
[33]   An inaccurate-timing filter for reaction time measurement by JAVA applets implementing Internet-based experiments [J].
Jan Eichstaedt .
Behavior Research Methods, Instruments, & Computers, 2001, 33 :179-186
[34]   The Perfect Getaway: Using Escape Analysis in Embedded Real-Time Systems [J].
Stilkerich, Isabella ;
Lang, Clemens ;
Erhardt, Christoph ;
Bay, Christian ;
Stilkerich, Michael .
ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2017, 16 (04)
[35]   Just-In-Time Compiler System in Aspect-Oriented Programming based Building Block Platform for constructing Domain-Specific Language for HPC Application [J].
Ishimura, Osamu ;
Yoshimoto, Yoshihide .
2022 TENTH INTERNATIONAL SYMPOSIUM ON COMPUTING AND NETWORKING WORKSHOPS, CANDARW, 2022, :241-247