Abstract
A methodology for the derivation of efficient parallel implementations from program specifications is developed. The goal of the methodology is to decompose a program specification into a collection of module specifications, such that each module may be implemented by a subprogram. The correctness of the whole program is then deduced from the correctness of the property refinement procedure and the correctness of the individual subprograms. The refinement strategy is based on identifying frequently occurring control structures such as sequential composition and iteration. The methodology is developed in the context of the UNITY logic and the UC programming language, and illustrated through the solution of diffusion aggregation in fluid flow simulations.
Work supported in part by NSF under grant CCR-9008628.
Work supported in part by the NSF PYI award (ASC 9157619) and Rome Laboratories (contract F30602-91-C-0061).
Preview
Unable to display preview. Download preview PDF.
References
Back, R. J. R., and K. Sere, Stepwise Refinement of Parallel Algorithms, Science of Computer Programming, 13, 1989–90, pp. 133–180.
Bagrodia, R., K. M. Chandy, and E. Kwan, UC: A Language for the Connection Machine, Proceedings of Supercomputing 1990, November 1990, pp. 525–534.
Bagrodia, R., and S. Mathur, Efficient Implementation of High-Level Parallel Programs, Proceedings of ASPLOS-IV, April 1991.
Chakravarty, I., M. Kleyn, T. Woo, R. Bagrodia, and V. Austel, Unity to UC: Case Studies in Parallel Program Construction, Technical Report TR-90-21, Schlumberger Laboratory for Computer Science, November 1990.
Chandy, K. M., and J. Misra, Parallel Program Design: A Foundation, Reading, Massachusetts: Addison-Wesley, 1988.
Dijkstra, E. W., A Discipline of Programming, Englewood Cliffs, New Jersey: Prentice-Hall, 1976.
Gries, D., The Science of Programming, New York: Springer-Verlag, 1981.
Hoare, C. A. R., An Axiomatic Basis for Computer Programming, Communications of the ACM, 12, 1969, pp. 576–580.
Misra, J., Proving Progress for Program Sequencing, Notes on Unity 16–90, July 1991.
Roberts, J. N., and L. Schwartz, Grain Consolidation in Porous Media, Physical Review, 31(9), 1985.
Sanders, B., Eliminating the Substitution Axiom from Unity, Formal Aspects of Computing, 3, 1991, pp. 189–205.
Singh, A. K., and R. Overbeek, Derivation of Efficient Parallel Programs: An Example from Genetic Sequence Analysis, International Journal of Parallel Programming, 18(6), Dec. 1989, pp. 447–484.
Singh, A. K., Program Refinement in Fair Transition Systems, Conference on Parallel Architectures and Languages Europe, Eindhoven, The Netherlands, July 1991.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Liu, Y., Singh, A.K., Bagrodia, R.L. (1992). A decompositional approach to the design of efficient parallel programs. In: Etiemble, D., Syre, JC. (eds) PARLE '92 Parallel Architectures and Languages Europe. PARLE 1992. Lecture Notes in Computer Science, vol 605. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55599-4_78
Download citation
DOI: https://doi.org/10.1007/3-540-55599-4_78
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55599-5
Online ISBN: 978-3-540-47250-6
eBook Packages: Springer Book Archive