Title :
A study of the cache and branch performance issues with running Java on current hardware platforms
Author :
Hsieh, C.-H.A. ; Conte, M.T. ; Johnson, T.L. ; Gyllenhaal, J.C. ; Hwu, W.-M.W.
Author_Institution :
Center for Reliable & High Performance Comput., Illinois Univ., Urbana, IL, USA
Abstract :
The Java bytecode language is emerging as a software distribution standard. With major vendors committed to porting the Java run-time environment to their platforms, Java bytecode programs are expected to run without modification on multiple platforms. These first generation run-time environments rely on an interpreter to bridge the gap between the bytecode instructions and the native hardware. However, Java interpreters cause performance problems with microarchitectural features such as the caches and the Branch Target Buffer. Some of these problems can be solved by translating Java bytecode to native code. We compare the performance of code run through the SUN Java interpreter to code compiled through Caffeine, a bytecode to native code translator, as well as to compiled C/C++ versions of the code, using large applications and common benchmarks. We discuss the reasons for several performance problems incurred by both approaches to running Java code, and examine possible solutions.
Keywords :
buffer storage; object-oriented languages; program compilers; program interpreters; software performance evaluation; storage management; Branch Target Buffer; Caffeine; Java bytecode language; Java interpreters; SUN Java interpreter; branch performance; bytecode to native code translator; cache performance; compiled C/C++; microarchitectural features; software distribution standard; Application software; Bridges; Distributed computing; Hardware; Java; Microarchitecture; Prototypes; Runtime environment; Software performance; Sun;
Conference_Titel :
Compcon '97. Proceedings, IEEE
Conference_Location :
San Jose, CA, USA
Print_ISBN :
0-8186-7804-6
DOI :
10.1109/CMPCON.1997.584710