ACM Home Page
Please provide us with feedback. Feedback
Efficient code caching to improve performance and energy consumption for java applications
Full text PdfPdf (181 KB)
Source
International Conference on Compilers, Architecture and Synthesis for Embedded Systems archive
Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems table of contents
Atlanta, GA, USA
SESSION: Caching and its impact table of contents
Pages 119-126  
Year of Publication: 2008
ISBN:978-1-60558-469-0
Authors
Yu Sun  Southern Illinois University Carbondale, Carbondale, IL, USA
Wei Zhang  Southern Illinois University Carbondale, Carbondale, IL, USA
Sponsors
SIGDA: ACM Special Interest Group on Design Automation
ACM: Association for Computing Machinery
SIGBED: ACM Special Interest Group on Embedded Systems
SIGMICRO: ACM Special Interest Group on Microarchitectural Research and Processing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 74,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1450095.1450115
What is a DOI?

ABSTRACT

Java applications rely on Just-In-Time (JIT) compilers or adaptive compilers to generate and optimize binary code at runtime to boost performance. In conventional Java Virtual Machines (JVM), however, the binary code is typically written into the data cache, and then is loaded into the instruction cache through the shared L2 cache or memory, which is not efficient in terms of both time and energy. In this paper, we study three hardware-based code caching strategies to write and read the dynamically generated code faster and more energy-efficiently. Our experimental results indicate that writing code directly into the instruction cache can improve the performance of a variety of Java applications by 9.6% on average, and up to 42.9%. Also, the overall energy dissipation of these Java programs can be reduced by 6% on average.


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
 
2
 
3
 
4
G. Chen, G. Chen, M. Kandemir, N. Vijaykrishnan and M. J. Irwin. Energy-aware code cache management for memory-constrained Java devices. In Proc. of International Systems-On-Chip (SOC) Conference, 2003.
 
5
6
 
7
8
9
10
11
 
12
V. Milutinovic, M. Tomasevic, B. Markovic and M. Tremblay. The split temporal/spatial cache: initial performance analysis. SCIzzL-5, March 1996.
 
13
J. A. Rivers and E. S. Davidson. Reducing conflicts in direct-mapped caches with a temporal locality based design. In Proc. of the International Conference on Parallel Processing, August 1996.
 
14
F. J. Sanchez, A. Gonzalez and M. Valero. Software management of selective and dual data caches. IEEE TCCA Newsletters, March 1997.
 
15
Standard Performance Evaluation Corporation. SPECjvm98 benchmarks. http://www.spec.org/osg/jvm98.
 
16
X. Huang, J. E. B. Moss, K. S. Mckinley, S. Blackburn and D. Burger. Dynamic SimpleScalar: simulating Java virtual machines. Technical Report TR-03-03, University of Texas at Austin, Feb. 2003.
17
 
18
 
19
 
20
M. Debbabi, A. Gherbi, L. Ketari, C. Talhi, H. Yahyaoui, S. Zhioua and N. Tawbi. E-Bunny: a dynamic compiler for embedded Java Virtual Machines. Journal of Object Technology 4(1): 83--108, 2005.