HPJava Home Page

<h1>HPJava Home Page</h1>

HPJava is an environment for <i>SPMD</i> (Single Program, Multiple
Data) parallel programming - especially, for SPMD programming with
distributed arrays.

<p>

The acronym ``HPJava'' was coined in a draft white paper produced by
members of the PCRC consortium early in 1996.  NPAC adopted the name
for its Java environment for SPMD computing.  This environment will
eventually contain Java bindings for distributed-array based libraries,
general MIMD programming libraries, and a preprocessor for an extended
dialect of Java.

<p>

The HPJava language model was motivated by work on HPF during in 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.

<p>

In the last year the HPJava language definition has been developed and
refined.  Work on a translator is in progress.  Java bindings of
various runtime functions have been implemented.  The first useable
component of the HPJava environment is the recently released
<em>mpiJava</em> binding of MPI.

<ul>
<li>
<a href="mpiJava.html"><em>mpiJava</em> Home Page.</a>
<li>
<a href="elements.html">Elements of the HPJava language</a>
<li>
<a href="beginnings.html">``High Performance Java'' at NPAC</a>
(some early work).

</ul>

<h2>Bibliography</h2>

For other related publications, see the main
<a href="http://www.npac.syr.edu/projects/pcrc/docs.html">
PCRC documents page</a>
and the <a href="mpiJava.html">mpiJava home page</a>.

<ul>

<li>
Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and
Yuhong Wen.
The HPspmd model and its Java Binding.
November, 1998.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/NOWbook/phbook.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/NOWbook/phbook.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/NOWbook/phbook/phbook.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
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, <EM>4th International
Europar Conference</EM>, volume 1470 of <EM>Lecture Notes in Computer
Science</EM>.  Springer, 1998.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/europar98/europar.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/europar98/europar.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/europar98/europar/europar.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen.
Considerations in HPJava language design and implementation.
In <EM>11th International Workshop on Languages and Compilers for
  Parallel Computing</EM>, August 1998.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/lcpc98/considerations.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/lcpc98/considerations.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/lcpc98/considerations/considerations.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
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, February 28 and March 1, 1998.
Short version to appear in Concurrency: Practice and Experience.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/Java98/Java98.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/Java98/Java98.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/Java98/Java98/Java98.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
Bryan Carpenter, Yuh-Jye Chang, Geoffrey Fox, Donald Leskiw, and Xiaoming Li.
Experiments with HPJava.
<EM>Concurrency: Practice and Experience</EM>, 9(6):633, 1997.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/exptsHPJava/experiments.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/exptsHPJava/experiments.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/exptsHPJava/experiments/experiments.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
Bryan Carpenter, Guansong Zhang, Geoffrey Fox, Xinying Li, and Yuhong Wen.
Introduction to Java-Ad.  November 1997.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/JavaAd/JavaAd.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/JavaAd/JavaAd.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/JavaAd/JavaAd/JavaAd.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen.
Structured SPMD programming--Java language binding. October 1997.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/structuredSPMD/javad.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/structuredSPMD/javad.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/structuredSPMD/javad/javad.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen.
A high level SPMD programming model: HPspmd and its Java
  language binding.
In <EM>International Conference on Parallel and Distributed
  Processing Techniques and Applications (PDPTA'98)</EM>, July 1998.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/pdpta98/hpspmd.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/pdpta98/hpspmd.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/papers/pdpta98/hpspmd/hpspmd.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
Bryan Carpenter and Geoffrey Fox.
HPspmd: Data Parallel SPMD Programming Models from Fortran to Java.
April, 1998.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/HPspmd/project.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/HPspmd/project.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/HPspmd/project/projec
t.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

<li>
Geoffrey&nbsp;C. Fox, editor.
<EM>Java for Computational Science and Engineering--Simulation
  and Modelling</EM>, volume 9(6) of <EM>Concurrency: Practice and Experience</EM>,
  June 1997.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/javaforcse/javameettalks.html">HTML</a></td>
<td>&nbsp;</td>
</table>

<li>
Geoffrey&nbsp;C. Fox, editor.
<EM>Java for Computational Science and Engineering--Simulation
  and Modelling II</EM>, volume 9(11) of <EM>Concurrency: Practice and
  Experience</EM>, November 1997.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/users/gcf/03/javaforcse/acmspecissue/latestpapers.html">HTML</a></td>
<td>&nbsp;</td>
</table>

<li>
ACM 1998 workshop on Java for high-performance network computing.
Palo Alto, California, February 28 and March 1, 1998.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.cs.ucsb.edu/conferences/java98">HTML</a></td>
<td>&nbsp;</td>
</table>

<li>
Bryan Carpenter, Yuh-Jye Chang and Geoffrey Fox.
Selected Notes on <em>HPJava</em>.
December, 1996.

<table border=0 cellpadding=5 >
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/NotesOnHPJava/reports.ps">Postscript</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/NotesOnHPJava/reports.pdf">PDF</a></TD>
<td>&nbsp;</td>
<td><a href="http://www.npac.syr.edu/projects/pcrc/reports/NotesOnHPJava/reports/reports.html">HTML</a></TD>
<td>&nbsp;</td>
</table>

</ul>

