November 2017
Intermediate to advanced
416 pages
14h 8m
English
Our approach to teaching and learning of parallel programming in this book is based on practical examples. Nevertheless, it is important to initially study a number of important theoretical concepts in this chapter before starting with actual programming. We begin with the PRAM model, an abstract shared memory machine model. It can be viewed as an idealized model of computation and is frequently used to design parallel algorithms. These theoretical designs often have an influence on actual parallel implementations (e.g. efficient PRAM algorithms are often the most efficient algorithms at CUDA thread block level). We analyze a few popular PRAM algorithms in terms of their cost and study the design ...
Read now
Unlock full access