This is a graduate course in parallel programming. It follows the same syllabus as CSci 493.65, but in a more advanced way. The students takign this course for graduate credit will work more and be given more challenging tasks than the undergraduates.
The course is an introduction to parallel algorithms and parallel programming in C and C++, using the Message Passing Interface (MPI) and the OpenMP application programming interface. It also includes a brief introduction to parallel architectures and interconnection networks. It is both theoretical and practical, including material on design methodology, performance analysis, and mathematical concepts, as well as details on programming using MPI and OpenMP.