Notice: For the latest information and guidance on Purdue's response to COVID-19 please visit:

Parallel Computing


Credit Hours:


Learning Objective:

Parallel Computing deals with emerging trends in the use of large scale computing platforms ranging from desktop multicore processors, tightly coupled SMPs, message passing platforms, and state-of-the-art virtualized cloud computing environments.


Parallel computing for science and engineering applications: parallel programming and performance evaluation, parallel libraries and problem-solving environments, models of parallel computing and run-time support systems, and selected applications.

Topics Covered:

Part 1: Parallel and distributed computing architectures; shared memory processors; distributed memory processors; multicore processors. Part 2: Parallel Programming; programming models; OpenMP for shared memory programs; MPI library for message passing; thread based programming. Part 3: Parallel algorithms; sorting; matrix-vector multiplication; matrix computations; graph algorithms. Part 4: Applications of these algorithms from various domains will be discussed.


A bachelor degree in computer science or an equivalent field. Students not in the Computer Science master's program should seek department permission to register.

Applied / Theory:

Web Address:


Approx. 6 assignments


1 Midterm and 1 Final


Required: Intro to Parallel Computing (2nd Edition) by Ananth Grama, Pearson, ISBN:9780201648652

Computer Requirements:

ProEd Minimum Requirements:


Tuition & Fees: