Advertisement

Compiling Multithreaded Java Bytecode for Distributed Execution

  • Gabriel Antoniu
  • Luc Bougé
  • Philip Hatcher
  • Mark MacBeth
  • Keith McGuigan
  • Raymond Namyst
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1900)

Abstract

Our work combines Java compilation to native code with a run-time library that executes Java threads in a distributed-memory environment. This allows a Java programmer to view a cluster of processors as executing a single Java virtual machine. The separate processors are simply resources for executing Java threads with true concurrency and the run-time system provides the illusion of a shared memory on top of the private memories of the processors. The environment we present is available on top of several UNIX systems and can use a large variety of network protocols thanks to the high portability of its run-time system. To evaluate our approach, we compare serial C, serial Java, and multithreaded Java implementations of a branch-and-bound solution to the minimal-cost map-coloring problem. All measurements have been carried out on two platforms using two different network protocols: SISCI/SCI and MPI-BIP/Myrinet.

Keywords

Shared Memory Runtime System Home Node Memory Subsystem Java Object 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    Gabriel Antoniu, Luc Bougé, and Raymond Namyst. Generic distributed shared memory: the DSM-PM2 approach. Research Report RR2000-19, LIP, ENS Lyon, Lyon, France, May 2000.Google Scholar
  2. [2]
    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
  3. [3]
    Luc Bougé, Jean-François Méhaut, and Raymond Namyst. Efficient communications in multithreaded runtime systems. In Parallel and Distributed Processing. Proc. 3rd Workshop on Runtime Systems for Parallel Programming RTSPP’ 99, volume 1586 of Lect. Notes in Comp. Science, pages 468–182, San Juan, Puerto Rico, April 1999. Held in conjunction with IPPS/SPDP 1999., Springer-Verlag.Google Scholar
  4. [4]
    F. Breg, S. Diwan, J. Villacis, J. Balasubramanian, E. Akman, and D. Gannon. Java RMI performance and object model interoperability: Experiments with Java/HPC++. In Proceedings of the ACM 1998 Workshop on Java for High-Performance Network Computing, pages 91–100, Palo Alto, California, February 1998.Google Scholar
  5. [5]
    D. Caromel, W. Klauser, and J. Vayssiere. Towards seamless computing and metacomputing in Java. Concurrency: Practice and Experience, 10:1125–1242, 1998.CrossRefGoogle Scholar
  6. [6]
    X. Chen and V. Allan. MultiJav: A distributed shared memory system based on multiple Java virtual machines. In Proceedings of the Conference on Parallel and Distributed Processing Techniques and Applications, Las Vegas, Nevada, June 1998.Google Scholar
  7. [7]
    A. Ferrari. JPVM: Network parallel computing in Java. In Proceedings of the ACM 1998 Workshop on Java for High-Performance Network Computing, pages 245–249, Palo Alto, California, 1998.Google Scholar
  8. [8]
    V. Getov, S. Flynn-Hummell, and S. Mintchev. High-performance parallel programming in Java: Exploiting native libraries. In Proceedings of the ACM 1998 Workshop on Java for High-Performance Network Computing, pages 45–54, Palo Alto, California, February 1998.Google Scholar
  9. [9]
    J. Gosling, W. Joy, and G. Steele Jr. The Java Language Specification. Addision-Wesley, Reading, Massachusetts, 1996.zbMATHGoogle Scholar
  10. [10]
    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
  11. [11]
    G. Muller, B. Moura, F. Bellard, and C. Consel. Harissa: A flexible and efficient Java environment mixing bytecode and compiled code. In Third Usenix Conference on Object-Oriented Technologies and Systems, Portland, Oregon, June 1997.Google Scholar
  12. [12]
    R. Namyst and J.F. Mehaut. PM2: Parallel Multithreaded Machine: A computing environment for distributed architectures. In ParCo’95 Parallel Computing, pages 279–285. Elsevier Science Publishers, September 1995.Google Scholar
  13. [13]
    M. Philippsen and M. Zenger. JavaParty-transparent remote objects in Java. Concurrency: Practice and Experience, 9(11):1125–1242, November 1997.Google Scholar
  14. [14]
    T. Proebsting, G. Townsend, P. Bridges, J. Hartman, T. Newsham, and S. Watterson. Toba: Java for applications-a way ahead of time (WAT) compiler. In Third Usenix Conference on Object-Oriented Technologies and Systems, Portland, Oregon, June 1997.Google Scholar
  15. [15]
    L. Prylli and B. Tourancheau. BIP: A new protocol designed for high performance networking on Myrinet. In Proceedings of First Workshop on Personal Computer Based Networks Of Workstations, volume 1388 of Lect. Notes in Comp. Science. Springer-Verlag., April 1998.Google Scholar
  16. [16]
    T. von Eicken, D. Culler, S. Goldstein, and K. Schauser. Active messages: A mechanism for integrated communication and computation. In International Symposium on Computer Architectures, pages 256–266, Gold Coast, Australia, May 1992.Google Scholar
  17. [17]
    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

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Gabriel Antoniu
    • 1
  • Luc Bougé
    • 1
  • Philip Hatcher
    • 2
  • Mark MacBeth
    • 2
    • 3
  • Keith McGuigan
    • 2
  • Raymond Namyst
    • 1
  1. 1.LIPENS LyonLyon Cedex 07France
  2. 2.Dept. Computer ScienceUniv. New HampshireDurhamUSA
  3. 3.Sanders, A Lockheed Martin Company, PTP02-D001NashuaUSA

Personalised recommendations