|
ABSTRACT
We propose, in this paper, a technique for the acceleration of embedded Java virtual machines. The technique relies on an established synergy between efficient interpretation and selective dynamic compilation. Actually, efficient interpretation is achieved by a generated threaded interpreter that is made of a pool of codelets. The latter are native code units efficiently implementing the dynamic semantics of a given bytecode. Besides, each codelet carries out the dispatch to the next bytecode eliminating therefore the need for a costly centralized traditional dispatch mechanism. The acceleration technique described in this paper advocates the use of a selective dynamic compiler to translate performance-critical methods to native code. The translation process takes advantage of the threaded interpreter by reusing most of the previously mentioned codelets. This tight collaboration between the interpreter and the dynamic compiler leads to a fast and lightweight (in terms of footprint) execution of Java class files.
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
|
B. Alpern , C. R. Attanasio , J. J. Barton , M. G. Burke , P. Cheng , J.-D. Choi , A. Cocchi , S. J. Fink , D. Grove , M. Hind , S. F. Hummel , D. Lieber , V. Litvinov , M. F. Mergen , T. Ngo , J. R. Russell , V. Sarkar , M. J. Serrano , J. C. Shepherd , S. E. Smith , V. C. Sreedhar , H. Srinivasan , J. Whaley, The Jalapeño virtual machine, IBM Systems Journal, v.39 n.1, p.211-238, January 2000
|
 |
2
|
|
 |
3
|
Ana Azevedo , Alex Nicolau , Joe Hummel, Java annotation-aware just-in-time (AJIT) complilation system, Proceedings of the ACM 1999 conference on Java Grande, p.142-151, June 12-14, 1999, San Francisco, California, United States
[doi> 10.1145/304065.304115]
|
 |
4
|
Michał Cierniak , Guei-Yuan Lueh , James M. Stichnoth, Practicing JUDO: Java under dynamic optimizations, Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation, p.13-26, June 18-21, 2000, Vancouver, British Columbia, Canada
|
| |
5
|
Debbabi, M., Erhioui, M., Ketari, L., Tawbi, N., Yahyaoui, H., and Zhioua, S. 2003. Method Call Acceleration in Embedded Java Virtual Machines. In Proceedings of International Conference on Computational Science (ICCS'03), P. Sloot, D. Abramson, A. Bogdanov, J. Dongara, A. Zomaya, and Y. Gorbachev, Eds. Lecture Notes in Computer Science, LNCS 2659. Springer-Verlag, Melbourne, Australia, 750--759.
|
| |
6
|
Mourad Debbabi , Abdelouahed Gherbi , Lamia Ketari , Chamseddine Talhi , Nadia Tawbi , Hamdi Yahyaoui , Sami Zhioua, A dynamic compiler for embedded Java virtual machines, Proceedings of the 3rd international symposium on Principles and practice of programming in Java, June 16-18, 2004, Las Vegas, Nevada
|
| |
7
|
Gagnon, E. and Hendren, L. 2003. Effective Inline-Threaded Interpretation of Java Bytecode Using Preparation Sequences. In Proceedings of Compiler Construction, 12th International Conference, CC 2003, Held as Part of the Joint European Conferences on Theory and Practice of Software (ETAPS 2003), G. Hedin, Ed. Lecture Notes in Computer Science, vol. 2622. Springer Verlag, Warsaw, Poland, 170--184.
|
| |
8
|
|
| |
9
|
|
| |
10
|
|
 |
11
|
|
| |
12
|
Pendragon, 1996. CaffeineMark. http://www.benchmarkhq.ru/cm30/.
|
 |
13
|
|
| |
14
|
Proebsting, T., Townsend, G., Bridges, P., Hartman, J., Newsham, T., and Watterson, S. 1997. Toba: Java for Applications: A Way Ahead of Time (WAT) Compiler. In Proceedings of the 3rd Conference on Object-Oriented Technologies and Systems. Usenix Association, Berkeley, 41--54.
|
| |
15
|
Ramesh Radhakrishnan , N. Vijaykrishnan , Lizy Kurian John , Anand Sivasubramaniam , Juan Rubio , Jyotsna Sabarinathan, Java Runtime Systems: Characterization and Architectural Implications, IEEE Transactions on Computers, v.50 n.2, p.131-146, February 2001
[doi> 10.1109/12.908989]
|
| |
16
|
Shannon, B. 2001. Java 2 Platform Enterprise Edition, v 1.3, Version 1.3 ed. Sun Microsystems Inc.
|
| |
17
|
|
| |
18
|
Spec. 1998. SPEC JVM98 Benchmarks. http://www.specbench.org/osg/jvm98/.
|
| |
19
|
T. Suganuma , T. Ogasawara , M. Takeuchi , T. Yasue , M. Kawahito , K. Ishizaki , H. Komatsu , T. Nakatani, Overview of the IBM Java just-in-time compiler, IBM Systems Journal, v.39 n.1, p.175-193, January 2000
|
| |
20
|
Sun. 1999. The Java HotSpot Performance Engine Architecture. White Paper.
|
| |
21
|
Sun. 2000. Connected, Limited Device Configuration. Specification Version 1.0, Java 2 Platform Micro Edition. White Paper.
|
| |
22
|
Sun. 2003a. Java 2 Platform, Standard Edition, v 1.4.2 API Specification, Version 1.4.2 ed. Sun Microsystems Inc.
|
| |
23
|
Sun. 2003b. KVM Porting Guide. White Paper.
|
| |
24
|
Sun. 2004. CLDC HotSpot Implementation Virtual Machine. White Paper.
|
| |
25
|
Byung-Sun Yang , Soo-Mook Moon , Seongbae Park , Junpyo Lee , SeungIl Lee , Jinpyo Park , Yoo C. Chung , Suhyun Kim , Kemal Ebcioglu , Erik Altman, LaTTe: A Java VM Just-in-Time Compiler with Fast and Efficient Register Allocation, Proceedings of the 1999 International Conference on Parallel Architectures and Compilation Techniques, p.128, October 12-16, 1999
|
|