Correctness of automated distribution of sequential programs
In this paper, we prove that the data-driven parallelization technique, which compiles sequential programs into parallel programs for distributed memory parallel computers, is correct. We dėfine a model based on labeled transition systems, and we prove, in spite of nondeterminism due to communications asynchronism, the confluence of all the possible behaviours of parallel programs obtained from the compilation rules.
We also show that this model is powerful enough to prove the correctness of various optimizations of the basic compilation mechanism.
Keywordsdistributed memory parallel machines formal program development methodologies parallel language constructs and semantics
Unable to display preview. Download preview PDF.
- 1.Françoise André, Jean-Louis Pazat, and Henry Thomas. Pandore: a system to manage data distribution. In ACM International Conference on Supercomputing, June 11–15 1990.Google Scholar
- 2.K.R. Apt and E.-R. Olderog. Verification of Sequential and Concurrent Programs. Springer-Verlag, 1991.Google Scholar
- 3.A. Arnold. Transition systems and concurrent processes. Mathematical Problems in Computation Theory, Banach Center Publications, 21, 1988.Google Scholar
- 4.Cyrille Bareau, Benoît Cailland, Claude Jard, and René Thoraval. Correctness of Automated Distribution of Sequential Programs. Technical Report 665, Institut de Recherche en Informatique et Systèmes Aléatoires, June 1992.Google Scholar
- 5.Luc Bougé. On the semantics of languages for massively parallel Simd architectures. Research report 91-14, LIP/ENS Lyon, April 1991.Google Scholar
- 7.ISO 9074. Estelle: a Formal Description Technique based on an Extented State Transition Model. ISO TC97/SC21/WG6.1, 1989.Google Scholar
- 8.C Jard and J.-M. Jézéquel. ECHIDNA, an Estelle-compiler to prototype protocols on distributed computers. Concurrency Practice and Experience, 4(5):377–397, August 1992.Google Scholar
- 9.Robert M. Keller. A fundamental theorem of asynchronous parallel computation. In T. Y. Feng, editor, Parallel Processing, pages 102–112, Springer Verlag, 1975. Lecture Notes in Computer Science 24.Google Scholar
- 10.R. Milner. Communication and Concurrency. Prentice Hall, 1989.Google Scholar
- 11.H. R. Nielson and F. Nielson. Semantics with Applications: a Formal Introduction. Wiley, 1992.Google Scholar
- 12.Edwin M. Paalvast, Henk J. Sips, and A. J. van Gemund. Automatic parallel program generation and optimization from data decompositions. In International Conference on Parallel Processing, August 1991.Google Scholar
- 13.P. Weis, M.V. Aponte, A. Laville, M. Mauny, and A. Suárez. The CAML reference manual. Rapport Technique 121, 1NRIA, septembre 1990.Google Scholar