A verified library of algorithmic skeletons on evenly distributed arrays

2Citations
Citations of this article
4Readers
Mendeley users who have this article in their library.
Get full text

Abstract

To make parallel programming as widespread as parallel architectures, more structured parallel programming paradigms are necessary. One of the possible approaches are algorithmic skeletons. They can be seen as higher order functions implemented in parallel. Algorithmic skeletons offer a simple interface to the programmer without all the details of parallel implementations as they abstract the communications and the synchronisations of parallel activities. To write a parallel program, users have to combine and compose the skeletons. Orléans Skeleton Library (OSL) is an efficient meta-programmed C++ library of algorithmic skeletons that manipulate distributed arrays. A prototype implementation of OSL exists as a library written with the function parallel language Bulk Synchronous Parallel ML (BSML). In this paper we are interested in verifying the correctness of a subset of this prototype implementation. To do so, we give a functional specification of a subset of OSL and we prove the correctness of the BSML implementation with respect to this functional specification, using the Coq proof assistant. To illustrate how the user could use these skeletons, we prove the correctness of two applications implemented with them. © 2012 Springer-Verlag.

Cite

CITATION STYLE

APA

Bousdira, W., Loulergue, F., & Tesson, J. (2012). A verified library of algorithmic skeletons on evenly distributed arrays. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 7439 LNCS, pp. 218–232). https://doi.org/10.1007/978-3-642-33078-0_16

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free