Computational & Technology Resources
an online resource for computational,
engineering & technology publications
Computational Science, Engineering & Technology Series
ISSN 1759-3158
Edited by: F. Magoulès
Chapter 3

High Level GPGPU Programming with Parallel Skeletons

M. Bourgoin, E. Chailloux and J.-L. Lamotte

Laboratoire d'Informatique de Paris 6 (LIP6 - UMR 7606), Universitée Pierre et Marie Curie (UPMC - Paris 6), Sorbonne Universités, Paris, France

Full Bibliographic Reference for this chapter
M. Bourgoin, E. Chailloux, J.-L. Lamotte, "High Level GPGPU Programming with Parallel Skeletons", in F. Magoulès, (Editor), "Patterns for Parallel Programming on GPUs", Saxe-Coburg Publications, Stirlingshire, UK, Chapter 3, pp 57-71, 2014. doi:10.4203/csets.34.3
Keywords: GPGPU, parallel skeletons, OCaml, parallel abstractions, design patterns.

General purposeGPU programming implies associating highly parallel graphical computing units with classic CPUs to achieve great performance on applications commonly handled by CPU only. This hybrid system leads to complex programming designs combining multiple paradigms to manage each hardware architecture (CPU and GPGPU devices). In this chapter, we present how parallel skeletons can help tackle this challenge by abstracting some of these programming designs while automatizing optimizations. Through a simple example using the OCaml programming language to develop and compose skeletons, we will present how simple modifications to use parallel skeletons can ease GPGPU programming while offering performance speedups.

purchase the full-text of this chapter (price £20)

go to the previous chapter
go to the next chapter
return to the table of contents
return to the book description
purchase this book (price £85 +P&P)