DHPC Technical Report DHPC-081
A Java-based Parallel Programming Support Environment
K.A. Hawick and H.A. James
Archived: 24 December 1999
Published in Proc. of High Performance Computing and Networks (HPCN)
Europe 2000, Amsterdam, May 2000.
Abstract
The Java programming language and environment is stimulating new
research activities in many areas of computing, not the least of which
is parallel computing. Parallel techniques are themselves finding new
uses in cluster computing systems. Although there are excellent
software tools for scheduling, monitoring and message-based
programming on parallel clusters, these systems are not yet well
integrated and do not provide very high-level parallel programming
paradigm support. We have prototyped a multi-paradigm parallel
programming toolkit in Java, specifically targeting an integrated
approach on Beowulf-style cluster computers. Our JUMP system builds
on ideas from the message-passing community as well as from
distributed systems technologies. We believe our system promises
high performance for parallel programming as well as integrating with
meta-computing frameworks for sharing resources across
administrative boundaries. The ever-improving Java development
environment allows us access to a number of techniques that were not
available using the message-passing systems of the past. In addition
to the usual object-oriented programming benefits, these include:
language reflection; a rich variety of remote and networking
techniques; dynamic class-loading; and code portability. Using pure
Java does at present still limit performance of some applications, but
we believe that as a research software system, the benefits of scoping
out the design issues of a system like JUMP now, are significant. We
expect Java Virtual Machine (JVM) performances to continue to improve.
Our system supports the usual messaging primitives although in a more
natural style for a modern object oriented program. We are using our
JUMP model framework to research some of the long sought after
parallel programming goals of support for parallel I/O; irregular and
dynamic domain decomposition and in particular irregular mesh support.
Keywords: JUMP; message passing; multi paradigm support;
metacomputing; programming environments.
PDF version
PostScript version (gzip compressed)
[
DHPC Adelaide |
DHPC Bangor |
Contacts |
People |
Projects |
Reports
]
webmaster@dhpc.adelaide.edu.au