The stapl Skeleton Framework

Mani Zandifar, Nathan Thomas, Nancy M. Amato, Lawrence Rauchwerger

Research output: Chapter in Book/Report/Conference proceedingChapter

4 Scopus citations

Abstract

© Springer International Publishing Switzerland 2015. This paper describes the stapl Skeleton Framework, a highlevel skeletal approach for parallel programming. This framework abstracts the underlying details of data distribution and parallelism from programmers and enables them to express parallel programs as a composition of existing elementary skeletons such as map, map-reduce, scan, zip, butterfly, allreduce, alltoall and user-defined custom skeletons. Skeletons in this framework are defined as parametric data flow graphs, and their compositions are defined in terms of data flow graph compositions. Defining the composition in this manner allows dependencies between skeletons to be defined in terms of point-to-point dependencies, avoiding unnecessary global synchronizations. To show the ease of composability and expressivity, we implemented the NAS Integer Sort (IS) and Embarrassingly Parallel (EP) benchmarks using skeletons and demonstrate comparable performance to the hand-optimized reference implementations. To demonstrate scalable performance, we show a transformation which enables applications written in terms of skeletons to run on more than 100,000 cores.
Original languageEnglish (US)
Title of host publicationLanguages and Compilers for Parallel Computing
PublisherSpringer Nature
Pages176-190
Number of pages15
ISBN (Print)9783319174723
DOIs
StatePublished - May 1 2015
Externally publishedYes

Fingerprint Dive into the research topics of 'The stapl Skeleton Framework'. Together they form a unique fingerprint.

Cite this