The Journal of Supercomputing

, Volume 43, Issue 2, pp 165–182 | Cite as

Runtime support for scalable programming in Java

  • Sang Boem LimEmail author
  • Hanku Lee
  • Bryan Carpenter
  • Geoffrey Fox


The paper research is concerned with enabling parallel, high-performance computation—in particular development of scientific software in the network-aware programming language, Java. Traditionally, this kind of computing was done in Fortran. Arguably, Fortran is becoming a marginalized language, with limited economic incentive for vendors to produce modern development environments, optimizing compilers for new hardware, or other kinds of associated software expected of by today’s programmers. Hence, Java looks like a very promising alternative for the future.

The paper will discuss in detail a particular environment called HPJava. HPJava is the environment for parallel programming—especially data-parallel scientific programming—in Java. Our HPJava is based around a small set of language extensions designed to support parallel computation with distributed arrays, plus a set of communication libraries. A high-level communication API, Adlib, is developed as an application level communication library suitable for our HPJava. This communication library supports collective operations on distributed arrays. We include Java Object as one of the Adlib communication data types. So we fully support communication of intrinsic Java types, including primitive types, and Java object types.


HPJava Parallel runtime library mpiJava 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    ACM (1998) Workshop on Java for high-performance network computing. Concurr Pract Exp 10(11-13):821–824 CrossRefGoogle Scholar
  2. 2.
    Agrawal A, Sussman A, Saltz J (1995) An integrated runtime and compiletime approach for parallelizing structured and block structured applications. IEEE Trans Parallel Distrib Syst 6 Google Scholar
  3. 3.
    Briggs WL, Van Henson E, McCormick SF (2000) A multigrid tutorial. The Society for Industrial and Applied Mathematics (SIAM) Google Scholar
  4. 4.
    Das R, Uysal MH, Salz JH, Hwang YS (1994) Communication optimizations for irregular scientific computations on distributed memory architectures. J Parallel Distrib Comput 22(3):462–479 CrossRefGoogle Scholar
  5. 5.
    DeSouza J, Kale LV (2003) Jade: A parallel message-driven java. In: Proceedings of the 2003 workshop on Java in computational science, Melburne, Australia. Available from
  6. 6.
    Java for computational science and engineering—simulation and modelling (1997) Concurr Pract Exp 9(6) Google Scholar
  7. 7.
    Java for computational science and engineering—simulation and modelling II (1997) Concurr Pract Exp 9(11):1001–1002 CrossRefGoogle Scholar
  8. 8.
    Java Grande Forum home page.
  9. 9.
    Lee HK (2003) Towards efficient compilation of the HPJava language for high performance computing. PhD thesis, Florida State University Google Scholar
  10. 10.
    Moreira JE, Midkiff SP, Gupta M, Lawrence R (1999) High performance computing with the array package for Java: a case study using data mining. In: Supercomputing 99, November 1999 Google Scholar
  11. 11.
    Moreira JE, Midkiff SP, Gupta M (2001) A comparision of three approaches to language, compiler and library support for multidimensional arrays in Java. In: ACM 2001 Java grande/ISCOPE conference. ACM Press Google Scholar
  12. 12.
    Timber Compiler Home Page.
  13. 13.
    Yelick K, Semenzato L, Pike G, Miyamoto C, Liblit B, Krishnamurthy A, Hilfinger P, Graham S, Gay D, Colella P, Aiken A (1998) Titanium: a high-performance Java dialect. In: ACM workshop on Java for high-performance network computing. Concurr Pract Exp 10(11-13):825–836 Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  • Sang Boem Lim
    • 1
    Email author
  • Hanku Lee
    • 4
  • Bryan Carpenter
    • 2
  • Geoffrey Fox
    • 3
  1. 1.Department of Advanced Technology FusionKonkuk UniversitySeoulRepublic of Korea
  2. 2.OMIIUniversity of SouthamptonSouthamptonUK
  3. 3.Pervasive Technology Labsat Indiana UniversityBloomingtonUSA
  4. 4.School of Internet and Multimedia EngineeringKonkuk UniversitySeoulRepublic of Korea

Personalised recommendations