Parallel and distributed programming are much more difficult than the development of sequential algorithms because of data distribution issues and communication requirements. This paper presents a methodology that enables an abstract description of the distribution of data structures by means of overlapping covers that form data distribution algebras. Algorithms are formulated and derived by transformation in a functional environment using skeletons, i.e. higher-order functions with specific parallel implementations. Communication is specified implicitly through the access to overlapping parts of covers. Such specifications enable the derivation of explicit lower-level communication statements. We illustrate the concepts by a complete derivation of Wang's partition algorithm for the solution of tridiagonal systems of linear equations.
Citation:
Peter Pepper, "Deriving Parallel Numerical Algorithms using Data Distribution Algebras: Wang's Algorithm," hicss, vol. 1, pp.501, 30th Hawaii International Conference on System Sciences (HICSS) Volume 1: Software Technology and Architecture, 1997