Abstract
This paper describes the implementation of Hyperion, an environment for executing Java programs on clusters of computers. To provide high performance, the environment compiles Java bytecode to native code and supports the concurrent execution of Java threads on multiple nodes of a cluster. The implementation uses the PM2 distributed, multithreaded runtime system. PM2 provides light weight threads and efficient inter-node communication. It also includes a generic, distributed shared memory layer (DSM-PM2) which allows the efficient and flexible implementation of the Java memory consistency model. This paper includes preliminary performance figures for our implementation of Hyperion/PM2 on clusters of Linux machines connected by SCI and Myrinet.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Y. Aridor, M. Factor, and A. Teperman. cJVM: A single system image of a JVM on a cluster. In Proceedings of the International Conference on Parallel Processing, Fukushima, Japan, September 1999.
F. Breg, S. Diwan, J. Villacis, et al. Java RMI performance and object model interoperability: Experiments with Java/HPC++. In Proc. ACM 1998 Workshop on Java for High-Performance Network Computing, pages 91–100, February 1998.
D. Caromel, W. Klauser, and J. Vayssiere. Towards seamless computing and meta-computing in Java. Concurrency: Practice and Experience, 10:1125–1242, 1998.
A. Ferrari. JPVM: Network parallel computing in Java. In Proc. ACM 1998 Workshop on Java for High-Performance Network Computing, pages 245–249, 1998.
V. Getov, S. Flynn-Hummell, and S. Mintchev. High-performance parallel programming in Java: Exploiting native libraries. In Proc. ACM 1998 Workshop on Java for High-Performance Network Computing, pages 45–54, February 1998.
J. Gosling, W. Joy, and G. Steele Jr. The Java Language Specification. Addison-Wesley, Reading, MA, 1996.
P. Launay and J.-L. Pazat. A framework for parallel programming in Java. In High-Performance Computing and Networking (HPCN’ 98), volume 1401 of Lect. Notes in Comp. Science, pages 628–637. Springer-Verlag, 1998.
K. Li and P. Hudak. Memory coherence in shared virtual memory systems. ACM Trans. Computer Systems, 7(4):321–359, November 1989.
F. Mueller. Distributed shared-memory threads: DSM-Threads. In Proc. of the Workshop on Run-Time Systems for Parallel Programming (RTSPP’ 97), pages 31–40, Geneva, Switzerland, April 1997. Held in conjonction with IPPS’ 97.
G. Muller, B. Moura, F. Bellard, and C. Consel. Harissa: A flexible and efficient Java environment mixing bytecode and compiled code. In Third Conference on Object-Oriented Technologies and Systems (COOTS’ 97), pages 1–20, Portland, June 1997.
Raymond Namyst and Jean-François Méhaut. PM2: Parallel multithreaded machine. a computing environment for distributed architectures. In Parallel Computing (ParCo’ 95), pages 279–285. Elsevier Science Publishers, September 1995.
B. Nitzberg and V. Lo. Distributed shared memory: A survey of issues and algorithms. IEEE computer, 24(8):52-60, September 1991.
M. Philippsen and M. Zenger. JavaParty — transparent remote objects in Java. Concurrency: Practice and Experience, 9(11):1125–1242, November 1997.
T. Proebsting, G. Townsend, P. Bridges, et al. Toba: Java for applications — a way ahead of time (WAT) compiler. In Third Conference on Object-Oriented Technologies and Systems (COOTS’ 97), Portland, June 1997.
W. Yu and A. Cox. Java/DSM: A platform for heterogeneous computing. In Proceedings of the Workshop on Java for High-Performance Scientific and Engineering Computing, Las Vegas, Nevada, June 1997.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Antoniu, G., Bougé, L., Hatcher, P., MacBeth, M., McGuigan, K., Namyst, R. (2000). Implementing Java consistency using a generic, multithreaded DSM runtime system. In: Rolim, J. (eds) Parallel and Distributed Processing. IPDPS 2000. Lecture Notes in Computer Science, vol 1800. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45591-4_76
Download citation
DOI: https://doi.org/10.1007/3-540-45591-4_76
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67442-9
Online ISBN: 978-3-540-45591-2
eBook Packages: Springer Book Archive