Summary
The development of a new parallel algorithm performing the LU-decomposition of a regular matrix is given. The algorithm is developed using formal techniques that rely on the use of invariants that express the properties of parallel processes (like in the Gries-Owicki approach) and ordered sets that define the communications between them. Special attention is given to the new notion of a parallel invariant: it is made clear that many invariants contain too many implicit sequential constraints, which makes them inferior to other ones. Also considered are the efficiency, both in communications and in computations, and the correctness. It is shown that the algorithm suggested in this paper has better efficiency than algorithms that use a partitioning of the matrix into rows, columns, or blocks. The programming techniques used are evaluated against the programming demands posed by the specific problem considered.
Similar content being viewed by others
References
Backhouse, R.C.: Program construction and verification. Englewood Cliffs: Prentice-Hall 1986.
Chandy, K.M., Misra, J.: Systolic algorithms as programs. Distributed Comput.3, 177–183 (1986)
Chen, M.C.: A design methodology for synthesizing parallel algorithms and architectures. J. Par. Distributed Comput.3, 461–491 (1986)
Dijkstra, E.W.: A discipline of programming. Englewood Cliffs: Prentice-Hall 1976
Dijkstra, E.W.: A personal summary of the Gries-Owicki theory. EWD 554. Eindhoven University of Technology
Gries, D.: The science of programming. Berlin Heidelberg New York: Springer 1981
Jones, C.B.: Specification and design of (parallel) programs. In: Information processing 83, pp. 321–332. Amsterdam New York Oxford: North-Holland IFIP 1983
Kung, H.T., Leierson, C.E.: Algorithms for VLSI processor arrays. In: Introduction to VLSI systems. Reading: Addison-Wesley 1980
Liu, J.W.H.: Computational models and task scheduling for parallel sparse Cholesky factorisation. Par. Comput.3, 327–342 (1986)
Owicki, S.: Axiomatic proof techniques for parallel programs. Cornell University thesis 1975
Owicki, S., Gries, D.: An axiomatic proof technique for parallel programs I. Acta Informatica6, 319–340 (1976)
Owicki, S., Gries, D.: Verifying properties of parallel programs: an axiomatic approach. Commun. ACM19, 279–285 (1976)
Stoer, J., Bulirsch, R.: Introduction to numerical analysis. Berlin Heidelberg New York: Springer 1980
Van de Snepscheut, J.L.A.: A derivation of a distributed implementation of Warshall’s algorithm. Sci. Comput. Prog.7, 55–60 (1986)
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
van de Vorst, J.G.G. The formal development of a parallel program performing LU-decomposition. Acta Informatica 26, 1–17 (1988). https://doi.org/10.1007/BF02915443
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF02915443