A calculus for parallel computations over multidimensional dense arrays

  • Authors:
  • Roberto Di Cosmo;Zheng Li;Susanna Pelagatti

  • Affiliations:
  • PPS, Université Paris VII - Denis Diderot, Case 7014, 2 place Jussieu, F-75251 Paris Cedex 05, France and Project Cristal, INRIA Rocquencourt, France;PPS, Université Paris VII - Denis Diderot, Case 7014, 2 place Jussieu, F-75251 Paris Cedex 05, France and Project Cristal, INRIA Rocquencourt, France;Dipartimento di Informatica, Universití di Pisa, Largo Pontecorvo 3, I-56127 Pisa, Italy

  • Venue:
  • Computer Languages, Systems and Structures
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a calculus to formalize and give costs to parallel computations over multidimensional dense arrays. The calculus extends a simple distribution calculus (proposed in some previous work) with computation and data collection. We consider an SPMD programming model in which process interaction can take place using point-to-point as well as collective operations, much in the style of MPI. We want to give a rigorous description of all stages of data parallel applications working over dense arrays: initial distribution (i.e., partition and replication) of arrays over a set of processors, parallel computation over distributed data, exchange of intermediate results and final data gather. In the paper, beside defining the calculus, we give it a formal semantics, prove equations between different combinations of operations, and show how to associate a cost to operation combinations. This last feature makes possible to make quantitative cost-driven choices between semantically equivalent implementation strategies.