DUALITY: An Architecture Independent Design Model for Parallel Systems Based on Partial Orders Semantics

  • Authors:
  • Camelia Zlatea;Tzilla Elrad

  • Affiliations:
  • -;-

  • Venue:
  • Proceedings of the 13th International Symposium on Distributed Computing
  • Year:
  • 1999

Quantified Score

Hi-index 0.01

Visualization

Abstract

This paper introduces DUALITY, a design model that provides a more structured style of parallel programming and refines causality from concurrency. We investigate semantic and syntactic transformations that support identifying the structure of a parallel program, as the basis for reducing the design complexity. The initial focus is on specification and correctness, then gradually adding architectural details and finally addressing efficiency. A parallel program is viewed as a Meta-Program -the result of causally composing an architecture-independent algorithm - the specification, with an architecture-dependent program -the mapping. This approach supports the derivation of efficient parallel implementations from program specifications. Consequently, transparent and architecture-independent specifications can be transformed into forms that match particular target architectures. Correctness of the implementation is inferred from correctness of the specification, by gradually imposing temporal and causal order and by transforming any property of the specification into a property of the parallel program. DUALITY relates data and process parallelism and aims to reuse design knowledge from sequential patterns. DUALITY is developed in the context of the UNITY formalism and the principle and algebraic laws of Communication Closed Layers (CCL), and illustrated through the algorithm of all-points shortest path.