|
ABSTRACT
The working set size of Java applications on embedded systems has recently been increasing, causing the Translation Lookaside Buffer (TLB) to become a serious performance bottleneck. From a thorough analysis of the SPECjvm98 benchmark suite executing on a commodity embedded system, we find TLB misses attribute from 24% to 50% of the total execution time. We explore and evaluate a wide spectrum of TLB-enhancing techniques with different combinations of software/hardware approaches, namely superpage for reducing TLB miss rates, two-level TLB and TLB prefetching for reducing both TLB miss rates and TLB miss latency, and even a no-TLB design for removing TLB overhead completely. We adapt and then in a novel way extend these approaches to fit the design space of embedded systems executing Java code. We compare these approaches, discussing their performance behavior, software/hardware complexity and constraints, especially the design implications for the application, runtime and OS.We first conclude that even with the aggressive approaches presented, there remains a performance bottleneck with the TLB. Second, in addition to facing very different design considerations and constraints for embedded systems, proven hardware techniques, such as TLB prefetching have different performance implications. Third, software based solutions, no-TLB design and superpaging, appear to be more effective in improving Java application performance on embedded systems. Finally, beyond performance, these approaches have their respective pros and cons; it is left to the system designer to make the appropriate engineering tradeoff.
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
|
Gansha Wu, Xin Zhou, Biao Chen, Peng Guo, Jinzhan Peng, Victor Ying. Memory Management for Multitasking Java on Resource-Constrained Devices. Submitted to HiPEAC'07.
|
| |
4
|
Gansha Wu, Xin Zhou, Guei-Yuan Lueh, Jesse Z. Fang, Peng Guo, Jinzhan Peng, Victor Ying. XAMM: A High-performance Automatic Memory Management System with Memory-Constrained Designs. In the proceeding of HiPEAC 2005:130--149
|
 |
5
|
|
 |
6
|
|
 |
7
|
|
 |
8
|
Juan Navarro , Sitaram Iyer , Peter Druschel , Alan Cox, Practical, transparent operating system support for superpages, Proceedings of the 5th symposium on Operating systems design and implementation Due to copyright restrictions we are not able to make the PDFs for this conference available for downloading, December 09-11, 2002, Boston, Massachusetts
[doi> 10.1145/1060289.1060299]
|
 |
9
|
|
| |
10
|
Mark Aiken, Mänuel Fahndrich, Chris Hawblitzel Galen C. Hunt, and James R. Larus. Deconstructing Process Isolation. Microsoft Research Technical Report MSR-TR-2006-43. Microsoft Corporation, Redmond, WA, April 2006.
|
| |
11
|
N. Ganapathy and C. Schimmei. General purpose operating system support for multiple page sizes. In Proceedings of the USENIX 1998.
|
| |
12
|
S. J. Winwood, Y. Shuf, and H. Franke. Multiple page size support in the Linux kernel. In Proceedings of Ottawa Linux Symposium, Ottawa, Canada, June 2002.
|
| |
13
|
|
| |
14
|
|
| |
15
|
Zhen Fang and Lixin Zhang. A Comparison of Online Superpage Promotion Mechanisms. www2.cs.utah.edu/impulse/papers/UUCS-99-021.ps.gz
|
| |
16
|
SpecJVM98, http://www.spec.org/jvm98/
|
 |
17
|
|
|