HPJava Home Page

mpiJava
HPJava language
SC '02 demo

Project flier

Java HPC Course
HPspmd lectures


Community Grids
Bloomington photos

Java Grande Home
Numerics working group


PCRC Home



Viewing these pages

HPJava Home Page

HPJava is an environment for scientific and parallel programming using Java. It is based on an extended version of the Java language. One feature that HPJava adds to Java is a multi-dimensional array, or multiarray, with properties similar to the arrays of Fortran.

HPJava supports parallel programming on distributed memory (and shared memory) parallel computers -- especially data parallel programming using distributed arrays similar to those in High Performance Fortran (HPF). The HPJava language model was motivated by work on HPF during the PCRC project -- it captures the HPF distributed array model in special syntax, but assumes that the programmer directly calls high-level runtime functions for communication and array manipulation.

HPJava is a strict extension of Java. It incorporates all of the Java language as a subset. Any ordinary Java class can be invoked from an HPJava program without recompilation. A translated and compiled HPJava program is a standard Java class file that can be executed by a distributed collection of Java Virtual Machines.

Version 1.0.1 of the HPJava software, including translator and runtime environment was released May, 2007:

Background

The acronym ``HPJava'' was coined in a draft white paper produced by members of the PCRC consortium early in 1996. NPAC at Syracuse University adopted the name for its Java environment for SPMD computing. Since then the team developing the HPJava environment moved from Syracuse to Florida State University. They recently moved again to the Pervasive Technology Labs at Indiana University.

Papers

For other related publications, see the PCRC documents page and the mpiJava home page.
  • Han-Ku Lee, Bryan Carpenter, Geoffrey Fox, and Sang Boem Lim. HPJava: Programming Support for High-Performance Grid-Enabled Applications. To appear, International Journal of Parallel Algorithms and Applications.
    PostscriptPDF HTML
  • Sang Boem Lim, Bryan Carpenter, Geoffrey Fox, and Han-Ku Lee. Collective Communication for the HPJava Programming Language. To appear Concurrency and Computation, Practice and Experience.
    PostscriptPDF HTML
  • Sang Boem Lim, Bryan Carpenter, Geoffrey Fox, and Han-Ku Lee. A Device Level Communication Library for the HPJava Programming Language. In proceedings of the IASTED International Conference on Parallel and Distributed Computing and Systems (PDCS 2003), November 2003
    PostscriptPDFMicrosoft Word
  • Bryan Carpenter, Geoffrey Fox, Han-Ku Lee and Sang Boem Lim. Applications of HPJava. In 16th International Workshop on Languages and Compilers for Parallel Computing, October 2003. Volume 2958 of Lecture Notes in Computer Science, 2003, © Springer Verlag.
    PostscriptPDF HTML
  • Han-Ku Lee, Bryan Carpenter, Geoffrey Fox, and Sang Boem Lim. Benchmarking HPJava: Prospects for Performance. In 6th Workshop on Languages, Compilers and Run-time Systems for Scalable Computers, March 2002.
    PostscriptPDF HTML
  • Bryan Carpenter, Geoffrey Fox, Han-Ku Lee and Sang Boem Lim. Translation Schemes for the HPJava Parallel Programming Language. In 14th International Workshop on Languages and Compilers for Parallel Computing, August 2001.
    PostscriptPDF HTML
  • Bryan Carpenter, Geoffrey Fox and Guansong Zhang. Semantic Checking in HPJava. May, 1999.
    PostscriptPDF HTML
  • Bryan Carpenter, Geoffrey Fox and Guansong Zhang. An HPspmd Programming Model. Extended Abstract. April, 1999.
    PostscriptPDF HTML
  • Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen. The HPspmd model and its Java Binding. November, 1998.
    PostscriptPDF HTML
  • 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, 1998, © Springer Verlag.
    PostscriptPDF HTML
  • 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, August 1998, © Springer Verlag.
    PostscriptPDF HTML
  • Bryan Carpenter, Guansong Zhang, Geoffrey Fox, Xinying Li, and Yuhong Wen. HPJava: Data parallel extensions to Java. ACM 1998 workshop on Java for high-performance network computing. Palo Alto, California. Concurrency: Practice and Experience, 10(11-13):873-877, 1998.
    PostscriptPDF HTML
  • Bryan Carpenter, Yuh-Jye Chang, Geoffrey Fox, Donald Leskiw, and Xiaoming Li. Experiments with HPJava. Concurrency: Practice and Experience, 9(6):633, 1997.
    PostscriptPDF HTML
  • Bryan Carpenter, Guansong Zhang, Geoffrey Fox, Xinying Li, and Yuhong Wen. Introduction to Java-Ad. November 1997.
    PostscriptPDF HTML
  • Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen. Structured SPMD programming - Java language binding. October 1997.
    PostscriptPDF HTML
  • Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen. A high level SPMD programming model: HPspmd and its Java language binding. In International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'98), July 1998.
    PostscriptPDF HTML
  • Bryan Carpenter and Geoffrey Fox. HPspmd: Data Parallel SPMD Programming Models from Fortran to Java. April, 1998.
    PostscriptPDF HTML
  • Geoffrey C. Fox, editor. Java for Computational Science and Engineering - Simulation and Modelling, volume 9(6) of Concurrency: Practice and Experience, June 1997.
    HTML
  • Geoffrey C. Fox, editor. Java for Computational Science and Engineering - Simulation and Modelling II, volume 9(11) of Concurrency: Practice and Experience, November 1997.
    HTML
  • ACM 1998 workshop on Java for high-performance network computing. Palo Alto, California, February 28 and March 1, 1998.
    HTML
  • Bryan Carpenter, Yuh-Jye Chang and Geoffrey Fox. Selected Notes on HPJava. December, 1996.
    PostscriptPDF HTML

Ph.D. Dissertations

  • Han-Ku Lee, Towards Efficient Compilation of the HPJava Language for High Performance Computing. Florida State University, 2003.
    PostscriptPDF HTML
  • Sang Boem Lim, Platforms for HPJava: Runtime Support for Scalable Programming in Java. Florida State University, 2003.
    PostscriptPDF HTML
  • Sung Hoon Ko, Object Based Message Passing in High Performance Computing using Java. Syracuse University, 2000.
    PostscriptPDF HTML

Acknowledgement

Development of the HPJava environment was funded in part by National Science Foundation Division of Advanced Computational Infrastructure and Research, contract number 9872125 (any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation).

Bryan Carpenter, (dbc@ecs.soton.ac.uk). Last updated May 2007.