Abstract
In bulk-synchronous parallel (BSP) computation a superstep comprises a collection of concurrently executed processes with initial and terminal synchronisations. Data transfer between processes is realised through asynchronous communications. BSP programs can be organised either as explicit compositions of supersteps or as parallel compositions of threads (processes) which include synchronisation alignment operations. In this paper axiomatic semantics for the two approaches are proposed: in both cases the semantics are based on a new form of multiple substitution - predicate substitution which generalises previous definitions of substitution. Predicate substitution together with global synchronisation provide a means of linking state based and process semantics of BSP. Features of both models are illustrated through correctness proofs of matrix multiplication programs
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have