General Information



This course introduces the fundamentals of multiprocessor programming. It covers processes and threads, synchronization and communication; concurrent objects and data structires, correctness of concurrent objects, parallel programming paradigms such as MPI and GPGPU.

Location and Time

Instructor: Borzoo Bonakdarpour, ITB 219, x23439
Lectures: MTh 3:30PM - 4:20PM, Tu 4:30-5:20 TSH B105
Office Hours: MTh 11am-12pm, ITB 219


Pop quizes 10%
Written assignments 45%
Programming assignments 45%

Announcements and Discussion Forum

All announcements discussion forums and course-related communications will posted on the Piazza social network. It is your responsibility to subscribe and check pizza on regular basis.


You may consult outside sources, such as textbooks as well as discussions with other students for general aspects your assignment, however all such sources must be documented. Failure to do so will result in academic dishonesty charges. The details of your assignment must be done individually. All homework assignments submissions should be made individually. No late assignment is accepted.

Some Rules

  • If you MSAF an assignment, the weight will be moved towards your last written assignment.
  • Your lowest grade will not be dropped and weight distribution will not be changed under any conditions.
  • Deadline of assignments will not be extended.
  • Any grading issues must be reported and discussed within one week. This include labs, assignments, and quizes. Any re-grading request after this period will not be considered.

Academic Integrity

All students are expected to adhere to McMasters academic integrity policies.