Parallel Programming for Scientific Computing (CMPT 851.3)

Recent/Current Offerings

Syllabus / Public content Section Term Instructor
CMPT 851 01 September 2016 Raymond Spiteri (primary instructor)


Despite the advances in computing technology, we continue to need greater computing power to address important scientific questions. Because individual processors have reached their performance limits, the need for greater computing power can only be met through parallel computers. This course is intended for students interested in taking advantage of parallel and distributed computing by writing parallel code for processor-intensive applications to be run on clusters, the cloud, or shared infrastructure such as that provided by Compute Canada. The objectives of this course are to give the students an understanding of how they can use parallel computing in their research and enable them to write parallel code for their applications. Extensive use of practical examples from scientific computing will be made. The programming languages used will be Matlab and Fortran or C. Both the shared and distributed paradigms of parallel computing will be covered via the OpenMP and MPI libraries.

Permission of the Instructor is required.


Undergraduate courses in Basic Numerical Analysis and Computer Programming are recommended.

Resources and Supports for CMPT 851

U of S Bookstore Textbook Search
Library Reserves Search
Hire a Tutor Search