Efficient runtime tracking of allocation sites in Java
Rei Odaira, Kazunori Ogata, et al.
VEE 2010
Computer designs are shifting from 32-bit architectures to 64-bit architectures, while most of the programs available today are still designed for 32-bit architectures. Java, for example, specifies the frequently used "int" as a 32-bit signed integer. If such Java programs are executed on a 64-bit architecture, many 32-bit signed integers must be sign-extended to 64-bit signed integers for correct operations. This causes serious performance overhead. In this article, we present a fast and effective algorithm for eliminating sign extensions. We implemented this algorithm in the IBM Java Just-in-Time (JIT) compiler for IA-64. Our experimental results show that our algorithm effectively eliminates the majority of sign extensions. They also show that it improves performance by 6.9% for jBYTEmark and 3.3% for SPECjvm98 over the previously known best algorithm, while it increases JIT compilation time by only 0.11%. © 2006 ACM.
Rei Odaira, Kazunori Ogata, et al.
VEE 2010
Kazuaki Ishizaki, Ken Mizuno, et al.
Annual Haifa Experimental Systems Conference 2010
Toshio Suganuma, Takeshi Ogasawara, et al.
IBM J. Res. Dev
Kazunori Ogata, Hideaki Komatsu, et al.
ASPLOS 2002