| Fast, effective code generation in a just-in-time Java compiler |
| Full text |
Pdf
(1.44 MB)
|
| Source
|
Conference on Programming Language Design and Implementation
archive
Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
table of contents
Montreal, Quebec, Canada
Pages: 280 - 290
Year of Publication: 1998
ISBN:0-89791-987-4
Also published in ...
|
|
Authors
|
|
Ali-Reza Adl-Tabatabai
|
Oracle Parkway, Redwood Shores, CA and Intel Corporation, 2200 Mission College Blvd., Santa Clara, CA
|
|
Michał Cierniak
|
Intel Corporation, 2200 Mission College Blvd., Santa Clara, CA
|
|
Guei-Yuan Lueh
|
Intel Corporation, 2200 Mission College Blvd., Santa Clara, CA
|
|
Vishesh M. Parikh
|
Intel Corporation, 2200 Mission College Blvd., Santa Clara, CA
|
|
James M. Stichnoth
|
Intel Corporation, 2200 Mission College Blvd., Santa Clara, CA
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 9, Downloads (12 Months): 122, Citation Count: 62
|
|
|
ABSTRACT
A "Just-In-Time" (JIT) Java compiler produces native code from Java byte code instructions during program execution. As such, compilation speed is more important in a Java JIT compiler than in a traditional compiler, requiring optimization algorithms to be lightweight and effective. We present the structure of a Java JIT compiler for the Intel Architecture, describe the lightweight implementation of JIT compiler optimizations (e.g., common subexpression elimination, register allocation, and elimination of array bounds checking), and evaluate the performance benefits and tradeoffs of the optimizations. This JIT compiler has been shipped with version 2.5 of Intel's VTune for Java product.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
Huw Evans , Peter Dickman, Garbage collection and memory management, Addendum to the 1997 ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications (Addendum), p.138-143, October 05-09, 1997, Atlanta, Georgia, United States
[doi> 10.1145/274567.274605]
|
| |
2
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
 |
3
|
D. Bernstein , M. Golumbic , y. Mansour , R. Pinter , D. Goldin , H. Krawczyk , I. Nahshon, Spill code minimization techniques for optimizing compliers, Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation, p.258-263, June 19-23, 1989, Portland, Oregon, United States
|
 |
4
|
P. Briggs , K. D. Cooper , K. Kennedy , L. Torczon, Coloring heuristics for register allocation, Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation, p.275-284, June 19-23, 1989, Portland, Oregon, United States
|
 |
5
|
|
| |
6
|
G.J. Chaitin, M. A. Auslander, A. K. Chandra, J. Cocke, M. E. Hopkins, and P. W. Markstein. Register allocation via coloring. Computer Languages, 6:47-57, January 1981.
|
| |
7
|
|
 |
8
|
|
| |
9
|
|
| |
10
|
|
| |
11
|
Intel Corp. Intel Architecture Software Developer's Manual, order number 243192. 1997.
|
| |
12
|
Intel Corp. Pentium Pro Family Developer's Manual, order number 000900-001. 1996.
|
| |
13
|
Intel Corp. VTune: Visual Tuning Environment. Available at ht{p;//deve!ol~er,intel.congdesi~n/peffiool/vtune
|
| |
14
|
R. Jones and R. Lins. Garbage Collection. John Wiley & Sons, 1996.
|
 |
15
|
Jens Knoop , Oliver Rüthing , Bernhard Steffen, Lazy code motion, Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation, p.224-234, June 15-19, 1992, San Francisco, California, United States
|
| |
16
|
A. Krall and R. Graft. CACAO---A 64-bit Java VM Justin-Time Compiler. In Proceedings of the ACM PPoPP97 Workshop on Java for Science and Engineering Computation.
|
| |
17
|
|
 |
18
|
|
| |
19
|
|
| |
20
|
Microsoft Corp. MS SDK 1.5.1. Available at h ttp.://ww.w ,micro so ft. co ~ av a
|
| |
21
|
Microsoft Corp. MS SDK 1.5.1 JIT Structure. Available at htt~://www,microsoft, co m/iava/sdlc/l 51/ vendor/vm015.htm
|
 |
22
|
|
 |
23
|
Massimiliano Poletto , Dawson R. Engler , M. Frans Kaashoek, tcc: a system for fast, flexible, and high-level dynamic code generation, Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation, p.109-121, June 16-18, 1997, Las Vegas, Nevada, United States
|
CITED BY 62
|
|
|
|
|
Tao Li , Lizy Kurian John , Vijaykrishnan Narayanan , Anand Sivasubramaniam , Jyotsna Sabarinathan , Anupama Murthy, Using complete system simulation to characterize SPECjvm98 benchmarks, Proceedings of the 14th international conference on Supercomputing, p.22-33, May 08-11, 2000, Santa Fe, New Mexico, United States
|
|
|
Seungll Lee , Byung-Sun Yang , Suhyun Kim , Seongbae Park , Soo-Mook Moon , Kemal Ebcioğlu , Erik Altman, Efficient Java exception handling in just-in-time compilation, Proceedings of the ACM 2000 conference on Java Grande, p.1-8, June 03-04, 2000, San Francisco, California, United States
|
|
|
Michael G. Burke , Jong-Deok Choi , Stephen Fink , David Grove , Michael Hind , Vivek Sarkar , Mauricio J. Serrano , V. C. Sreedhar , Harini Srinivasan , John Whaley, The Jalapeño dynamic optimizing compiler for Java, Proceedings of the ACM 1999 conference on Java Grande, p.129-141, June 12-14, 1999, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
Ana Azevedo , Alex Nicolau , Joe Hummel, Java annotation-aware just-in-time (AJIT) complilation system, Proceedings of the ACM 1999 conference on Java Grande, p.142-151, June 12-14, 1999, San Francisco, California, United States
|
|
|
Raja Vallée-Rai , Phong Co , Etienne Gagnon , Laurie Hendren , Patrick Lam , Vijay Sundaresan, Soot - a Java bytecode optimization framework, Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research, p.13, November 08-11, 1999, Mississauga, Ontario, Canada
|
|
|
|
|
|
Kazuaki Ishizaki , Mikio Takeuchi , Kiyokuni Kawachiya , Toshio Suganuma , Osamu Gohda , Tatsushi Inagaki , Akira Koseki , Kazunori Ogata , Motohiro Kawahito , Toshiaki Yasue , Takeshi Ogasawara , Tamiya Onodera , Hideaki Komatsu , Toshio Nakatani, Effectiveness of cross-platform optimizations for a java just-in-time compiler, ACM SIGPLAN Notices, v.38 n.11, November 2003
|
|
|
|
|
|
|
|
|
|
|
|
Ramesh Radhakrishnan , N. Vijaykrishnan , Lizy Kurian John , Anand Sivasubramaniam , Juan Rubio , Jyotsna Sabarinathan, Java Runtime Systems: Characterization and Architectural Implications, IEEE Transactions on Computers, v.50 n.2, p.131-146, February 2001
|
|
|
Kazuaki Ishizaki , Motohiro Kawahito , Toshiaki Yasue , Mikio Takeuchi , Takeshi Ogasawara , Toshio Suganuma , Tamiya Onodera , Hideaki Komatsu , Toshio Nakatani, Design, implementation, and evaluation of optimizations in a just-in-time compiler, Proceedings of the ACM 1999 conference on Java Grande, p.119-128, June 12-14, 1999, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
Ole Agesen , David Detlefs , Alex Garthwaite , Ross Knippel , Y. S. Ramakrishna , Derek White, An efficient meta-lock for implementing ubiquitous synchronization, ACM SIGPLAN Notices, v.34 n.10, p.207-222, Oct. 1999
|
|
|
|
|
|
|
|
|
|
|
|
Michal Cierniak , Brian T. Lewis , James M. Stichnoth, Open runtime platform: flexibility with performance using interfaces, Proceedings of the 2002 joint ACM-ISCOPE conference on Java Grande, p.156-164, November 03-05, 2002, Seattle, Washington, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C. John Glossner , Michael Schulte , Stamatis Vassiliadis, A Java-enabled DSP, Embedded processor design challenges: systems, architectures, modeling, and simulation-SAMOS, Springer-Verlag New York, Inc., New York, NY, 2002
|
|
|
|
|
|
|
|
|
|
|
|
T. Suganuma , T. Ogasawara , M. Takeuchi , T. Yasue , M. Kawahito , K. Ishizaki , H. Komatsu , T. Nakatani, Overview of the IBM Java just-in-time compiler, IBM Systems Journal, v.39 n.1, p.175-193, January 2000
|
|
|
B. Alpern , C. R. Attanasio , J. J. Barton , M. G. Burke , P. Cheng , J.-D. Choi , A. Cocchi , S. J. Fink , D. Grove , M. Hind , S. F. Hummel , D. Lieber , V. Litvinov , M. F. Mergen , T. Ngo , J. R. Russell , V. Sarkar , M. J. Serrano , J. C. Shepherd , S. E. Smith , V. C. Sreedhar , H. Srinivasan , J. Whaley, The Jalapeño virtual machine, IBM Systems Journal, v.39 n.1, p.211-238, January 2000
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
T. Suganuma , T. Ogasawara , K. Kawachiya , M. Takeuchi , K. Ishizaki , A. Koseki , T. Inagaki , T. Yasue , M. Kawahito , T. Onodera , H. Komatsu , T. Nakatani, Evolution of a java just-in-time compiler for IA-32 platforms, IBM Journal of Research and Development, v.48 n.5/6, p.767-795, September/November 2004
|
|
|
|
|
|
|
|
|
Gregory T. Sullivan , Derek L. Bruening , Iris Baron , Timothy Garnett , Saman Amarasinghe, Dynamic native optimization of interpreters, Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators, p.50-57, June 12-12, 2003, San Diego, California
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Neal Glew , Spyridon Triantafyllis , Michał Clerniak , Marsha Eng , Brian Lewis , James Stichnoth, LIL: an architecture-neutral language for virtual-machine stubs, Proceedings of the 3rd conference on Virtual Machine Research And Technology Symposium, p.9-9, May 06-07, 2004, San Jose, California
|
|
|
SungHyun Hong , Jin-Chul Kim , Jin Woo Shin , Soo-Mook Moon , Hyeong-Seok Oh , Jaemok Lee , Hyung-Kyu Choi, Java client ahead-of-time compiler for embedded systems, ACM SIGPLAN Notices, v.42 n.7, July 2007
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Thomas Kotzmann , Christian Wimmer , Hanspeter Mössenböck , Thomas Rodriguez , Kenneth Russell , David Cox, Design of the Java HotSpot™ client compiler for Java 6, ACM Transactions on Architecture and Code Optimization (TACO), v.5 n.1, p.1-32, May 2008
|
|
|
Byung-Sun Yang , Junpyo Lee , SeungIl Lee , Seongbae Park , Yoo C. Chung , Suhyun Kim , Kemal Ebcioglu , Erik Altman , Soo-Mook Moon, Efficient Register Mapping and Allocation in LaTTe, an Open-Source Java Just-in-Time Compiler, IEEE Transactions on Parallel and Distributed Systems, v.18 n.1, p.57-69, January 2007
|
|
|
Benoit Boissinot , Alain Darte , Fabrice Rastello , Benoit Dupont de Dinechin , Christophe Guillon, Revisiting Out-of-SSA Translation for Correctness, Code Quality and Efficiency, Proceedings of the 2009 International Symposium on Code Generation and Optimization, p.114-125, March 22-25, 2009
|
|
|
|
|
|
Sunghyun Hong , Jin-Chul Kim , Soo-Mook Moon , Jin Woo Shin , Jaemok Lee , Hyeong-Seok Oh , Hyung-Kyu Choi, Client ahead-of-time compiler for embedded Java platforms, Software—Practice & Experience, v.39 n.3, p.259-278, March 2009
|
|
|
|
|