Programming Massively Parallel Processors: A Hands-on Approach
Programming Massively Parallel Processors: A Hands-on Approach
Learning CUDA: lab exercises and experiences
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Learning CUDA: lab exercises and experiences, part 2
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
A stratified view of programming language parallelism for undergraduate CS education
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Hi-index | 0.00 |
In this tutorial, we share our experiences teaching parallelism with GPUs and a Game of Life assignment. The rise of multicore computer hardware (now even in phones and tablets) has introduced new urgency to learn parallel programming. Whereas threads and/or MPI have been taught for many years, programming GPUs (Graphics Processing Units) with hundreds of cores is an exciting new option. With the introduction of languages such as CUDA for general-purpose GPU programming, we can now parallel program GPUs for computational tasks and achieve orders of magnitude improvement in performance.