Skip to main content

Implementing Java consistency using a generic, multithreaded DSM runtime system

  • Conference paper
  • First Online:
Parallel and Distributed Processing (IPDPS 2000)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1800))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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.

    Google Scholar 

  2. 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.

    Google Scholar 

  3. D. Caromel, W. Klauser, and J. Vayssiere. Towards seamless computing and meta-computing in Java. Concurrency: Practice and Experience, 10:1125–1242, 1998.

    Article  Google Scholar 

  4. A. Ferrari. JPVM: Network parallel computing in Java. In Proc. ACM 1998 Workshop on Java for High-Performance Network Computing, pages 245–249, 1998.

    Google Scholar 

  5. 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.

    Google Scholar 

  6. J. Gosling, W. Joy, and G. Steele Jr. The Java Language Specification. Addison-Wesley, Reading, MA, 1996.

    MATH  Google Scholar 

  7. 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.

    Google Scholar 

  8. K. Li and P. Hudak. Memory coherence in shared virtual memory systems. ACM Trans. Computer Systems, 7(4):321–359, November 1989.

    Article  Google Scholar 

  9. 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.

    Google Scholar 

  10. 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.

    Google Scholar 

  11. 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.

    Google Scholar 

  12. B. Nitzberg and V. Lo. Distributed shared memory: A survey of issues and algorithms. IEEE computer, 24(8):52-60, September 1991.

    Article  Google Scholar 

  13. M. Philippsen and M. Zenger. JavaParty — transparent remote objects in Java. Concurrency: Practice and Experience, 9(11):1125–1242, November 1997.

    Article  Google Scholar 

  14. 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.

    Google Scholar 

  15. 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.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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

Publish with us

Policies and ethics