Credit units: 3
Offered: Either Term 1 or Term 2
Weekly hours: 3 Lecture hours
College: Graduate and Postdoc Studies
Department: Computer Science
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.
Note: Undergraduate courses in Basic Numerical Analysis and Computer Programming are recommended.
Upcoming class offerings
Examples of current or recently-offered class syllabus material can be found on the Open CourseWare website.
The syllabus is a public document that provides detail about a class, such as the schedule of activities, learning outcomes, and weighting of assignments and examinations. Please note that the examples provided in Open CourseWare do not represent a complete set of current or previous syllabus material. Rather, they are presented solely for the purpose of indicating what may be required for a given class.
For more information about syllabi, visit the Academic Courses Policy.