Graph grammar based specification of interconnection structures for massively parallel computation
Algorithms designed for highly parallel processing often require specific interprocess communication topologies, including vectors, meshes, trees, toruses and cubeconnected structures. Static communication structures are naturally expressed as graphs with regular properties, but this level of abstraction is not supported in current environments. Our approach to programming massively parallel processors involves a graph editor, which allows the programmer to specify communication structures graphically. As a foundation for graph editor operations, we are currently investigating properties of aggregate rewriting graph grammars which rewrite, in parallel, aggregates of nodes whose labels are logically related. We have found these grammars to be efficient in their description of many recursively defined graphs. Languages generated by these grammars can be associated with families of graphs. We also suggest extensions to the formalism that make use of extended labeling information that would be available in graph editors.
Key wordsGraph grammars parallel rewriting systems interconnection structures
Unable to display preview. Download preview PDF.
- J. C. Browne, A. Tripathi, S. Fedak, A. Adiga, and R. Kapur. A language for specification and programming of reconfigurable parallel computation structures. In 1982 International Conference on Parallel Processing, pages 142–149, August 1982.Google Scholar
- Hungwen Li, Ching-Chy Wang, and Mark Lavin. Structured process: a new language attribute for better interaction of parallel architecture and algorithm. In 1985 International Conference on Parallel Processing, pages 247–254, August 1985.Google Scholar
- G. Rozenberg. Dependence graphs. In Proceedings of the Third International Workshop on Graph Grammars (this volume), December 1986.Google Scholar
- Lawrence Snyder. Introduction to the configurable highly parallel computer. Computer, 15(1):47–56, January 1982.Google Scholar