Bytecode-to-C Ahead-of-Time Compilation for Android Dalvik Virtual Machine

被引:0
|
作者
Oh, Hyeong-Seok [1 ]
Yeo, Ji Hwan [1 ]
Moon, Soo-Mook [1 ]
机构
[1] Seoul Natl Univ, Dept Elect & Comp Engn, Seoul, South Korea
关键词
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Android employs Java for programming its apps which is executed by its own virtual machine called the Dalvik VM (DVM). One problem of the DVM is its performance. Its just-in-time compiler (JITC) cannot generate high-performance code due to its trace-based compilation with short traces and modest optimizations, compared to JVM's method-based compilation with ample optimziations. This paper proposes a bytecode-to-C ahead-of-time compilation (AOTC) for the DVM to accelerate pre-installed apps. We translated the bytecode of some of the hot methods used by these apps to C code, which is then compiled together with the DVM source code. AOTC-generated code works with the existing Android zygote mechanism, with corrects garbage collection and exception handling. Due to off-line, method-based compilation using existing compiler with full optimizations and Java-specific optimizations, AOTC can generate quality code while obviating runtime compilation overhead. For benchmarks, AOTC can improve the performance by 10% to 500%. When we compare this result with the recently-introduced ART, which also performs ahead-of-time compilation, our AOTC performs better.
引用
收藏
页码:1048 / 1053
页数:6
相关论文
共 24 条
  • [1] Bytecode-to-C ahead-of-time compilation for Android Dalvik Virtual Machine
    Department of Electrical and Computer Engineering, Seoul National University, Seoul, Korea, Republic of
    Proc. Des. Autom. Test Eur. DATE, (1048-1053):
  • [2] Efficient exception handling in Java']Java bytecode-to-C ahead-of-time compiler for embedded systems
    Jung, Dong-Heon
    Park, JongKuk
    Bae, Sung-Hwan
    Lee, Jaemok
    Moon, Soo-Mook
    COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2008, 34 (04) : 170 - 183
  • [3] Ahead-of-time compilation of JavaScript programs
    R. Zhuykov
    E. Sharygin
    Programming and Computer Software, 2017, 43 : 51 - 59
  • [4] Evaluation of Android Dalvik Virtual Machine
    Oh, Hyeong-Seok
    Kim, Beom-Jun
    Choi, Hyung-Kyu
    Moon, Soo-Mook
    PROCEEDINGS OF THE 10TH INTERNATIONAL WORKSHOP ON JAVA TECHNOLOGIES FOR REAL-TIME AND EMBEDDED SYSTEMS, 2012, : 115 - 124
  • [5] Evaluation of android dalvik virtual machine
    School of Electrical Engineering and Computer Science, Seoul National University, Seoul 151-742, Korea, Republic of
    ACM Int. Conf. Proc. Ser., (115-124):
  • [6] Improved Ahead-of-time Compilation of Stack-based JVM Bytecode on Resource-constrained Devices
    Reijers, Niels
    Shih, Chi-Sheng
    ACM TRANSACTIONS ON SENSOR NETWORKS, 2019, 15 (03)
  • [7] Ahead-of-time compilation of Java']JavaScript programs
    Zhuykov, R.
    Sharygin, E.
    PROGRAMMING AND COMPUTER SOFTWARE, 2017, 43 (01) : 51 - 59
  • [8] 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,
  • [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] An adaptive compilation system based on the Dalvik virtual machine
    Ling, Ming
    Wu, Jian-Ping
    Feng, Ke-Huan
    Tien Tzu Hsueh Pao/Acta Electronica Sinica, 2013, 41 (08): : 1622 - 1627