| Support for garbage collection at every instruction in a Java compiler |
| Full text |
Pdf
(1.06 MB)
|
| Source
|
Conference on Programming Language Design and Implementation
archive
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
table of contents
Atlanta, Georgia, United States
Pages: 118 - 127
Year of Publication: 1999
ISBN:1-58113-094-5
Also published in ...
|
|
Authors
|
|
James M. Stichnoth
|
Inktomi Corporation, 1900 S., Norfolk St., Suite 310, San Mateo, CA and Intel Corporation, 2200 Mission College Blvd, Santa Clara, CA
|
|
Guei-Yuan Lueh
|
Intel Corporation, 2200 Mission College Blvd, Santa Clara, CA
|
|
Michał Cierniak
|
Intel Corporation, 2200 Mission College Blvd, Santa Clara, CA
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 7, Downloads (12 Months): 50, Citation Count: 13
|
|
|
ABSTRACT
A high-performance implementation of a Java Virtual Machine1 requires a compiler to translate Java bytecodes into native instructions, as well as an advanced garbage collector (e.g., copying or generational). When the Java heap is exhausted and the garbage collector executes, the compiler must report to the garbage collector all live object references contained in physical registers and stack locations. Typical compilers only allow certain instructions (e.g., call instructions and backward branches) to be GC-safe; if GC happens at some other instruction, the compiler may need to advance execution to the next GC-safe point. Until now, no one has ever attempted to make every compiler-generated instruction GC-safe, due to the perception that recording this information would require too much space. This kind of support could improve the GC performance in multithreaded applications. We show how to use simple compression techniques to reduce the size of the GC map to about 20% of the generated code size, a result that is competitive with the best previously published results. In addition, we extend the work of Agesen, Detlefs, and Moss, regarding the so-called "JSR Problem" (the single exception to Java's type safety property), in a way that eliminates the need for extra runtime overhead in the generated code.
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
|
Ali-Reza Adl-Tabatabai , Michał Cierniak , Guei-Yuan Lueh , Vishesh M. Parikh , James M. Stichnoth, Fast, effective code generation in a just-in-time Java compiler, Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation, p.280-290, June 17-19, 1998, Montreal, Quebec, Canada
|
 |
2
|
Ole Agesen , David Detlefs , J. Eliot Moss, Garbage collection and local variable type-precision and liveness in Java virtual machines, Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation, p.269-279, June 17-19, 1998, Montreal, Quebec, Canada
|
| |
3
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
| |
4
|
|
 |
5
|
Amer Diwan , Eliot Moss , Richard Hudson, Compiler support for garbage collection in a statically typed language, Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation, p.273-282, June 15-19, 1992, San Francisco, California, United States
|
| |
6
|
|
| |
7
|
|
| |
8
|
Intel Corp. Intel Architecture Software Developer's Manual, order number 243192. 1997.
|
| |
9
|
R. Jones and R. Lins. Garbage Collection. John Wiley & Sons, 1996.
|
| |
10
|
|
| |
11
|
Standard Performance Evaluation Corporation. http: //www. spec. org/osg/jvm98
|
CITED BY 13
|
|
Bowen Alpern , C. R. Attanasio , Anthony Cocchi , Derek Lieber , Stephen Smith , Ton Ngo , John J. Barton , Susan Flynn Hummel , Janice C. Sheperd , Mark Mergen, Implementing jalapeño in Java, ACM SIGPLAN Notices, v.34 n.10, p.314-324, Oct. 1999
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
|
G. Chen , R. Shetty , M. Kandemir , N. Vijaykrishnan , M. J. Irwin , M. Wolczko, Tuning garbage collection for reducing memory system energy in an embedded java environment, ACM Transactions on Embedded Computing Systems (TECS), v.1 n.1, p.27-55, November 2002
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
|
N. Vijaykrishnan , M. Kandemir , S. Kim , S. Tomar , A. Sivasubramaniam , M. J. Irwin, Energy behavior of java applications from the memory perspective, Proceedings of the JavaTM Virtual Machine Research and Technology Symposium on JavaTM Virtual Machine Research and Technology Symposium, p.23-23, April 23-24, 2001, Monterey, California
|
|
|
|
|
|
|
|