Evolution of a Java']Java just-in-time compiler for IA-32 platforms

被引:8
|
作者
Suganuma, T [1 ]
Ogasawara, T [1 ]
Kawachiya, K [1 ]
Takeuchi, M [1 ]
Ishizaki, K [1 ]
Koseki, A [1 ]
Inagaki, T [1 ]
Yasue, T [1 ]
Kawahito, M [1 ]
Onodera, T [1 ]
Komatsu, H [1 ]
Nakatani, T [1 ]
机构
[1] IBM Res Div, IBM Tokyo Res Lab, Yamatoshi, Kanagawa 2428502, Japan
关键词
D O I
10.1147/rd.485.0767
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Java(TM) has gained widespread popularity in the industry, and an efficient Java virtual machine (JVM(TM)) and just-in-time (JIT) compiler are crucial in providing high performance for Java applications. This paper describes the design and implementation of our HT compiler for IA-32 platforms by focusing on the recent advances achieved in the past several years. We first present the dynamic optimization framework, which focuses the expensive optimization efforts only on performance-critical methods, thus helping to manage the total compilation overhead. We then describe the platform-independent features, which include the conversion from the stack-semantic Java bytecode into our register-based intermediate representation (IR) and a variety of aggressive optimizations applied to the IR. We also present some techniques specific to the IA-32 used to improve code quality, especially for the efficient use of the small number of registers on that platform. Using several industry-standard benchmark programs, the experimental results show that our approach offers high performance with low compilation overhead. Most of the techniques presented here are included in the IBM HT compiler product, integrated into the IBM Development Kit for Microsoft Windows(R), Java Technology Edition Version 1.4.0.
引用
收藏
页码:767 / 795
页数:29
相关论文
共 50 条
  • [41] Toba: Java']Java for applications - A way ahead of time (WAT) compiler
    Proebsting, TA
    Townsend, G
    Bridges, P
    Hartman, JH
    Newsham, T
    Watterson, SA
    PROCEEDINGS OF THE THIRD USENIX CONFERENCE ON OBJECT-ORIENTED TECHNOLOGIES AND SYSTEMS (COOTS), 1997, : 41 - 53
  • [42] 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
  • [43] Evaluation of a Just-in-Time Compiler Retrofitted for PHP
    Tatsubori, Michiaki
    Tozawa, Akihiko
    Suzumura, Toyotaro
    Trent, Scott
    Onodera, Tamiya
    ACM SIGPLAN NOTICES, 2010, 45 (07) : 121 - 131
  • [44] A Just-in-Time compiler for a reconfigurable testing platform
    El-Kadri, Mohammad
    Groza, Voicu
    Abielmona, Rami
    Assaf, Mansour
    2006 IEEE INSTRUMENTATION AND MEASUREMENT TECHNOLOGY CONFERENCE PROCEEDINGS, VOLS 1-5, 2006, : 628 - +
  • [45] Just-in-time compiler for konohascript using LLVM
    Ide, Masahiro
    Kuramitsu, Kimio
    IPSJ Online Transactions, 2013, 6 (01) : 9 - 16
  • [46] Flow-sensitive runtime estimation: an enhanced hot spot detection heuristics for embedded Java']Java just-in-time compilers
    Lee, Seong-Won
    Moon, Soo-Mook
    Kim, Seong-Moo
    SOFTWARE-PRACTICE & EXPERIENCE, 2016, 46 (06): : 841 - 864
  • [47] Design and Optimization of a Java']Java Ahead-of-Time Compiler for Embedded Systems
    Jung, Dong-Heon
    Moon, Soo-Mook
    Bae, Sung-Hwan
    EUC 2008: PROCEEDINGS OF THE 5TH INTERNATIONAL CONFERENCE ON EMBEDDED AND UBIQUITOUS COMPUTING, VOL 1, MAIN CONFERENCE, 2008, : 169 - 175
  • [48] Selective Just-in-Time Compilation for Client-side Mobile Java']JavaScript Engine
    Lee, Seong-Won
    Moon, Soo-Mook
    PROCEEDINGS OF THE PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON COMPILERS, ARCHITECTURES AND SYNTHESIS FOR EMBEDDED SYSTEMS (CASES '11), 2011, : 5 - 13
  • [49] Templates-based portable just-in-time compiler
    Iliasov, A
    ACM SIGPLAN NOTICES, 2003, 38 (08) : 37 - 43
  • [50] BacCaml: The Meta-Hybrid Just-In-Time Compiler
    Izawa, Yusuke
    PROGRAMMING 2019: PROCEEDINGS OF THE CONFERENCE COMPANION OF THE 3RD INTERNATIONAL CONFERENCE ON ART, SCIENCE, AND ENGINEERING OF PROGRAMMING, 2019,