University of Birmingham School of Computer Science
Home double arrow Internal double arrow Modules

MODULE DESCRIPTION, 2009/10

06-?????
Programming Massively Parallel Architectures

This School of Computer Science Module Description is a strict subset of the Syllabus Page, which gives more information.

Module Title Programming Massively Parallel Architectures
School/Department Computer Science
Module Code 06-?????
Descriptor COMP/06-?????/LM
Member of Staff Dr D R Ghica
Level M
Credits 10
Semester 1
Pre-requisites None
Co-requisites None, but systems level programming skills will be helpful.
Restrictions For 2009/10, the module can only accommodate a certain maximum number of students, depending on how much equipment can be purchased. If too many students opt for this module, a test will be conducted to limit the numbers of students.
Contact hours 35
Delivery 2 hrs/week lectures; 2 hrs/week practical sessions
Description This module covers the basics of programming massively parallel processors as commonly found in graphics processing units (GPUs). The module is focussed on the architecture of such devices and their use in speeding-up common (non-graphical) computational tasks. Recent developments in GPU architectures made this task substantially easier and newly available programming tools allow for high-level straightforward programming of these systems. The module will provide a largely practical introduction to the topic. Lectures will address the basic architectural principles of modern GPUs andrelevant algorithms and programming techniques. The exercises will be practical programming based on the CUDA framework for Nvidia GPUs.
Outcomes
On successful completion of this module, the student should be able to: Assessed by:
describe and explain modern GPU architecture; Examination
describe and explain applications of parallel programming; Examination
describe and explain the CUDA programming model; Examination
design simple parallel algorithms; Examination and continuous assessment
implement more advanced parallel algorithms using CUDA; Continuous assessment
use CUDA tools to debug and profile programs. Continuous assessment
Assessment Sessional: Normal (sessional): 1.5 hr examination (80%), continuous assessment (20%)
Supplementary (where allowed): By examination only (100%)
Texts Peter Thoman, Multigrid Methods on GPUs, VDM Verlag, .
Hubert Nguyen, GPU Gems 3: Programming Techniques for High-Performance Graphics and General-Purpose Computation, Addison Wesley, .