JavaSymphony: A System for Development of Locality-Oriented Distributed and Parallel Java Applications
Most Java-based systems that support portable parallel and distributed computing either require the programmer to deal with intricate low-level details of Java which can be a tedious, time-consuming and error-prone task, or prevent the programmer from controlling locality of data. In this paper we describe JavaSymphony, a programming paradigm for distributed and parallel computing that provides a software infrastructure for wide classes of heterogeneous systems ranging from small-scale cluster computing to large scale wide-area meta-computing. The software infrastructure is written entirely in Java and runs on any standard compliant Java virtual machine. In contrast to most existing systems, JavaSymphony provides the programmer with the flexibility to control data locality and load balancing by explicit mapping of objects to computing nodes. Virtual architectures are specified to impose a virtual hierarchy on a distributed system of physical computing nodes. Objects can be mapped and dynamically migrated to arbitrary components of virtual architectures. A high-level API to hardware/software system parameters is provided to control mapping, migration, and load balancing of objects. Objects can interact through synchronous, asynchronous and one-sided method invocation. Selective remote classloading may reduce the overall memory requirement of an application. Moreover, objects can be made persistent by explicitly storing and loading objects to/from external storage. A prototype of the JavaSymphony software infrastructure has been implemented. Preliminary experiments on a heterogeneous cluster of workstations are described that demonstrate reasonable performance values for a small test program.
Top- Fahringer, T.
Category |
Technical Report (Technical Report) |
Divisions |
Scientific Computing |
Publisher |
Institute for Software Science, University of Vienna |
Date |
December 2000 |
Official URL |
http://www.par.univie.ac.at/publications/download/... |
Export |