Translation Schemes for the HPJava Parallel Programming Language

  • Bryan Carpenter
  • Geoffrey Fox
  • Han-Ku Lee
  • Sang Boem Lim
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2624)


The article describes the current status of the authors’ HPJava programming environment. HPJava is a parallel dialect of Java that imports Fortran-like arrays—in particular the distributed arrays of High Performance Fortran—as new data structures. The article discusses the translation scheme adopted in a recently developed translator for the HPJava language. It also gives an overview of the language.


Parallel Programming Source Program Base Language Translation Scheme Communication Library 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    L. S. Blackford, J. Choi, A. Cleary, E. D’Azevedo, J. Demmel, I. Dhillon, J. Dongarra, S. Hammarling, G. Henry, A. Petitet, K. Stanley, D. Walker, and R. C. Whaley. ScaLAPACK User’s Guide. SIAM, 1997.Google Scholar
  2. [2]
    M. Bull, L. Smith, L. Pottage, and R. Freeman. Benchmarking Java against C and Fortran for scientific applications. In ACM 2001 Java Grande/ISCOPE Conference. ACM Press, June 2001.Google Scholar
  3. [3]
    Bryan Carpenter, Guansong Zhang, Geoffrey Fox, Xiaoming Li, Xinying Li, and Yuhong Wen. Towards a Java environment for SPMD programming. In David Pritchard and Jeff Reeve, editors, 4th International Europar Conference, volume 1470 of Lecture Notes in Computer Science. Springer, 1998. Scholar
  4. [4]
    Bryan Carpenter, Guansong Zhang, and Han-Ku Lee. Parallel programming in HPJava.
  5. [5]
    R. Das, M. Uysal, J.H. Salz, and Y.-S. Hwang. Communication optimizations for irregular scientific computations on distributed memory architectures. Journal of Parallel and Distributed Computing, 22(3):462–479, September 1994.CrossRefGoogle Scholar
  6. [6]
    Stephen J. Fink and Scott B. Baden. Run-time data distribution for block-structured applications on distributed memory computers. In Proceedings of the 7th SIAM Conference on Parallel Processing for Scientific Computing, February 1995.Google Scholar
  7. [7]
    Michael Gerndt. Updating distributed variables in local computations. Concurrency: Practice and Experience, 2(3):171–193, 1990.CrossRefGoogle Scholar
  8. [8]
    C. Koelbel and P. Mehrotra. Compiling global name-space parallel loops for distributed execution. IEEE Transactions on Parallel and Distributed Systems, 2(4):440–451, 1991.CrossRefGoogle Scholar
  9. [9]
    J.E. Moreira. Closing the performance gap between Java and Fortran in technical computing. In First UK Workshop on Java for High Performance Network Computing, Europar’ 98, September 1998.
  10. [10]
    J.E. Moreira, S.P. Midkiff, and M. Gupta. From flop to MegaFlops: Java for technical computing. In Languages and Compilers for Parallel Computing, volume 1656 of Lecture Notes in Computer Science. Springer, 1998.Google Scholar
  11. [11]
    J.E Moreira, S.P. Midkiff, and M. Gupta. 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, June 2001.Google Scholar
  12. [12]
    J.E. Moreira, S.P. Midkiff, M. Gupta, and R. Lawrence. High performance computing with the Array package for Java: A case study using data mining. In Supercomputing’ 99. IEEE Computer Society Press, 1999.Google Scholar
  13. [13]
    J. Nieplocha, R.J. Harrison, and R.J. Littlefield. The Global Array: Non-uniform-memory-access programming model for high-performance computers. The Journal of Supercomputing, 10:197–220, 1996.CrossRefGoogle Scholar
  14. [14]
    Manish Parashar and J.C. Browne. Systems engineering for high performance computing software: The HDDA/DAGH infrastructure for implementation of parallel structured adaptive mesh. In Structured Adaptive Mesh Refinement Grid Methods, IMA Volumes in Mathematics and its Applications. Springer-Verlag.Google Scholar
  15. [15]
    R.W. Numrich and J.L. Steidel. F--: a simple parallel extension to Fortran 90. SIAM News, page 30, 1997.Google Scholar
  16. [16]
    Peng Wu, Sam Midkiff, Jose Moreira, and Manish Gupta. Efficient support for complex numbers in Java. In ACM 1999 Java Grande Conference. ACM Press, June 1999.Google Scholar
  17. [17]
    Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen. Considerations in HPJava language design and implementation. In 11th International Workshop on Languages and Compilers for Parallel Computing, 1998.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Bryan Carpenter
    • 1
  • Geoffrey Fox
    • 1
  • Han-Ku Lee
    • 1
  • Sang Boem Lim
    • 1
  1. 1.School of Computational Science and Information TechnologyFlorida State UniversityTallahassee

Personalised recommendations