Algorithmic skeletons: structured management of parallel computation
Algorithmic skeletons: structured management of parallel computation
Parallel computing (2nd ed.): theory and practice
Parallel computing (2nd ed.): theory and practice
Using MPI: portable parallel programming with the message-passing interface
Using MPI: portable parallel programming with the message-passing interface
Higher-order functions and partial applications for a C++ skeleton library
JGI '02 Proceedings of the 2002 joint ACM-ISCOPE conference on Java Grande
Skeletons for Data Parallelism in p3l
Euro-Par '97 Proceedings of the Third International Euro-Par Conference on Parallel Processing
Euro-Par '02 Proceedings of the 8th International Euro-Par Conference on Parallel Processing
Using OpenMP: Portable Shared Memory Parallel Programming (Scientific and Engineering Computation)
Using OpenMP: Portable Shared Memory Parallel Programming (Scientific and Engineering Computation)
A Parallel Skeleton Library for Multi-core Clusters
ICPP '09 Proceedings of the 2009 International Conference on Parallel Processing
Skeletons for divide and conquer algorithms
PDCN '08 Proceedings of the IASTED International Conference on Parallel and Distributed Computing and Networks
Skandium: Multi-core Programming with Algorithmic Skeletons
PDP '10 Proceedings of the 2010 18th Euromicro Conference on Parallel, Distributed and Network-based Processing
SkePU: a multi-backend skeleton programming library for multi-GPU systems
Proceedings of the fourth international workshop on High-level parallel programming and applications
SkelCL - A Portable Skeleton Library for High-Level GPU Programming
IPDPSW '11 Proceedings of the 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and PhD Forum
Flexible skeletal programming with eskel
Euro-Par'05 Proceedings of the 11th international Euro-Par conference on Parallel Processing
Algorithmic skeleton framework for the orchestration of GPU computations
Euro-Par'13 Proceedings of the 19th international conference on Parallel Processing
Hi-index | 0.00 |
Due to the lack of high-level abstractions, developers of parallel applications have to deal with low-level details such as coordinating threads or synchronising processes. Thus, parallel programming still remains a difficult and error-prone task. In order to shield the user from these low-level details, algorithmic skeletons have been proposed. They encapsulate typical parallel programming patterns and have emerged to be an efficient approach to simplifying the development of parallel applications. In this paper, we present our skeleton library Muesli, which not only simplifies parallel programming. Additionally, it allows to write a single application that may be executed on a variety of parallel machines ranging from simple multi-core processors with shared memory to clusters of multi-and many-core processors with distributed memory as well as multi-GPU systems and GPU clusters. The level of platform independence is not reached by other existing approaches, that simplify parallel programming. Internally, the skeletons are based on MPI, OpenMP and CUDA. We demonstrate portability and efficiency of our approach by providing experimental results.