Our work involves the development of a prototype Geographic Information System (GIS) as an example of the use of process networks as a well-defined high-level semantic model for the composition of streams of data. Our Java-based implementation of the prototype is known as Jade.
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, partially-processed imagery) between services. The services are pre-defined operations that can be performed on image data. In Jade, the operations are selected from the Generic Mapping Tools (GMT) library. Input to the network is a satellite image, and output is a processed image. The network represents a high-level, user-assembled specification of the necessary intermediate processing.
To exploit potential parallelism, we extend the idea of a process network to a distributed process network, where each service may be processed on different computers, A single server coordinates computation. Computation is performed by an arbitrary number of workers. The servers and workers together constitute the metacomputer. The server takes a process network from a client and distributes work to the workers, scheduling it dynamically and transparently over the participating computational nodes.
Keywords: Generic Mapping Tools; GIS; process networks; Kahn semantics
An earlier version of this work was published as DHPC Technical Report DHPC-055