Introduction to parallel architectures, programming languages and algorithms for processor clusters and multi-core processors. Distributed memory architectures, cluster computing, message passing parallel programming, multi-core processors, shared memory parallel programming, use of thread libraries, parallel performance analysis. Prerequisites: COMP 2402, COMP 2404, COMP 3000.
- Textbook [OPTIONAL, do NOT buy prior to discussion in class]: “Elements of Parallel Computing” by Eric Aubanel – CRC Press, 2016
- CLR “Algorithms” book chapter on Cilk.
Lars Doyle (LarsDoyle@cmail.carleton.ca)
TA Office Hours
Wednesdays 10-11, location TBA