Process networks as a high-level notation for metacomputing
Our work involves the development of a prototype Geographical Information System (GIS) as an example of the use of process networks as a well-defined high-level semantic model for the composition of GIS operations. Our Java-based implementation of this prototype is known as PAGIS (Process network Architecture for GIS).
Our process networks consist of a set of nodes and edges connecting those nodes assembled as a Directed Acyclic Graph (DAG). In our prototype, nodes represent services and edges represent the flow of data (in this case sub-processed imagery) between services. Services are pre-defined operations that can be performed on imagery, presently selected from the Generic Mapping Tools (GMT) library. In order to control the start and end-point of the DAG, we define an input node (the original image) and an output node (the result image).
To exploit potential parallelism, we extend our idea of a process network to a distributed process network, where each service may be processed on different computers. A single server coordinates computation and computation is performed by any number of workers. The server and workers together can beseen as a metacomputer. The server takes a process network from a client and distributes work to the workers. Each worker applies for work and decides if it is capable of performing the work offered. In this way, scheduling is essentially dynamic, and computation can be performed without client intervention.
KeywordsGeographical Information System Directed Acyclic Graph Domain Expert Process Network Generic Mapping Tool
Unable to display preview. Download preview PDF.
- 1.Distributed High Performance Computing Project, University of Adelaide. See: http://www.dhpc.adelaide.edu.auGoogle Scholar
- 3.“The Tycho User Interface System” Christopher Hylands, Edward A. Lee, and H. John Reeckie, University of California at Berkeley, Berkeley CA 94720.Google Scholar
- 4.Japanese Meteorological Agency. See: http://www.jma.gov.jpGoogle Scholar
- 5.JavaSoft Java Studio. See: http://www.javasoft.com/studioGoogle Scholar
- 6.“The Semantics of a Simple Language for Parallel Programming”, G. Kahn, Proceedings of IFIP Congress 74.Google Scholar
- 7.“RMI—Remote Method Invocation API Documentation”, Sun Microsystems Inc., 1996.Google Scholar
- 8.“Implementation of Process Networks in Java”, Richard S. Stevens, Marlene Wan, Peggy Laramie, Thomas M. Parks, and Edward A. Lee, 10 July 1997.Google Scholar
- 9.Ptolemy II. See: http://ptolemy.eecs.berkeley.edu/ptolemyIIGoogle Scholar
- 11.“A Java Framework for Seamless Sequential, Multi-threaded, and Distributed Programming”, Denis Caromel and Julien Vayssière, INRIA Sophia Antipolis. See: http://www.inria.fr/sloop/javallGoogle Scholar
- 12.“DISCWorld: An Environment for Service-Based Metacomputing”, Hawick, James, Silis, Grove, Kerry, Mathew, Coddington, Patten, Hercus, and Vaughan. Future Generation Computer Systems Journal, Special Issue on Metacomputing, to appear. See: http://www.dhpc.adelaide.edu.au/reports/042Google Scholar