DocumentCode :
1336967
Title :
Toward formally-based design of message passing programs
Author :
Gorlatch, Sergei
Author_Institution :
Passau Univ., Germany
Volume :
26
Issue :
3
fYear :
2000
fDate :
3/1/2000 12:00:00 AM
Firstpage :
276
Lastpage :
288
Abstract :
Presents a systematic approach to the development of message passing programs. Our programming model is SPMD, with communications restricted to collective operations: scan, reduction, gather, etc. The design process in such an architecture-independent language is based on correctness-preserving transformation rules that are provable in a formal functional framework. We develop a set of design rules for composition and decomposition. For example, scan followed by reduction is replaced by a single reduction, and global reduction is decomposed into two faster operations. The impact of the design rules on the target performance is estimated analytically and tested in machine experiments. As a case study, we design two provably correct, efficient programs using the Message Passing Interface (MPI) for the famous maximum segment sum problem, starting from an intuitive, but inefficient, algorithm specification
Keywords :
application program interfaces; distributed programming; formal specification; message passing; software performance evaluation; MPI; Message Passing Interface; SPMD programming model; algorithm specification; architecture-independent language; collective operations; composition; correctness-preserving transformation rules; decomposition; design rules; efficient programs; formal functional framework; formally-based design; gathering operation; homomorphisms; maximum segment sum problem; message passing programs; performance; program transformations; reduction operation; scanning operation; skeletons; systematic program design; Algorithm design and analysis; Design methodology; Message passing; Parallel architectures; Parallel programming; Performance analysis; Process design; Programming profession; Skeleton; Testing;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/32.842952
Filename :
842952
Link To Document :
بازگشت