CS525: Parallel Computing
Spring 2018.

Ananth Grama, ayg@cs.purdue.edu, 494 6964
Tu/Th 1:30 - 2:45 PM
HAAS G66

Office Hours:
W, 1:30 - 3:00, and by appointment.

TA: Yongyang Yu, yu163@purdue.edu
LWSN 2149 #12

Office Hours: 3:00pm - 4:30pm Friday

Course Announcements:

Important announcements relating to the course will be made here. Please look at this area of the web page periodically. Announcements will include (but are not limited to) release of assignments, erratas, and grades.

Course Contents

CS525, 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 . The course consists of four major parts:
  • Parallel Programming: Programming models and language support for programming parallel platforms is discussed. Message passing using MPI, thread-based programming using POSIX threads, and directive-based programming using OpenMP are discussed.
  • Parallel and distributed platforms: This part of the class outlines parallel computing hardware. Topics covered include processor and memory architectures, multicore, SMP, and message passing hardware, interconnection networks, and evaluation metrics for architectures. Cost models for communication are also developed.
  • Parallel and Distributed Algorithms: Starting from design principles for parallel algorithms, this part develops parallel algorithms for a variety of problems. Various metrics for evaluating these algorithms are also discussed.
  • Applications: A variety of parallel applications from diverse domains such as data analysis, graphics and visualization, particle dynamics, and discrete event and direct numerical simulations will be discussed.

Syllabus and Lecture Notes.

Academic Dishonesty Policy:

Please read this policy before starting as I intend on enforcing it strictly.

Grading Policy

Your grade will be determined using the following grading rubric:

Five Homeworks: 40%
One Midterm: 25%
Final Exam: 35%


  • Assignment 2: (Due Feb 15, 11:59 PM) Problems 2.6, 2.12, 2.13, 2.20, 2.23, 2.24, and 2.25 of the text `Introduction to Parallel Computing', by Grama et al. Please either type your answers, or write cleanly, scan, convert to pdf and submit. The turnin command is similar to HW1, "turnin -v -c cs525 -p HW2". You only need to change HW1 to HW2 for the new submission.

    Here are some old tests: one two three four.