15-418/15-618: Parallel Computer Architecture and Programming, Spring 2020

Spring 2020
15-418/618 Lectures: MWF 3:00-4:20, GHC 4401 (Rashid Auditorium) Randal Bryant and Nathan Beckmann

From smart phones, to multi-core CPUs and GPUs, to the world's largest supercomputers, parallel processing is ubiquitous in modern computing. The goal of this course is to provide a deep understanding of the fundamental principles and engineering trade-offs involved in designing modern parallel computing systems as well as to teach parallel programming techniques necessary to effectively utilize these machines. Because writing good parallel programs requires an understanding of key machine performance characteristics, this course will cover hardware design and how that affects software design.

Course Syllabus


What's New?

  • 03 January 2020. We have a very large waiting list for the course. Our maximum enrollment is 175, limited by the size of the lecture room. Our procedure for managing the waitlist will be as follows:
    • Waitlisted students will have the opportunity to work on Assignment 1 and turn it in by 11:00pm Wednesday, January 22. Autolab accounts will not be needed.
    • We will grade these assignments and register the top-performing students for the course by the add deadline (Monday, January 27).
    • Performance on Assignment 1 will be the only factor in determining who gets off the waitlist.
    • This is not a race.The order in which people submit their solutions will have no impact.
    • Please do not contact the instructors in an attempt to circumvent this process.
    • Meanwhile, if you are registered for the course but have doubts about your ability to complete the course, please drop it by January 29. Working on Assignment 1 will give you a good indication of our expectations for the course.

Prerequisites: 15-213 or equivalent (including 14-513, 15-513, 18-213, and 18-613)


Getting Help

Piazza www.piazza.com/cmu/spring2020/1541815618/home
Email Please use Piazza for help, instead of email. Posts to Piazza are private by default.

Course Materials

Schedule Lecture schedule and slides
Assignments Details of assignments, due dates, and policies
Exams Information about exams
Resources Additional course resources

Course Information

For details See the course syllabus for details (below are just a few overview bits).
Lectures MWF 3:00-4:20 GHC 4401
Credit 12 units
Grading See syllabus
Assignments There are four programming assignments, not evenly weighted. See the assignments page for the breakdown.
Exams There will be two exams (in-class, closed-book).
Exercises There will be five homework assignments.
Home http://www.cs.cmu.edu/~418
Questions Piazza, office hours
Course Directory /afs/cs/academic/class/15418-s20/

Instructors

Name Randy Bryant Nathan Beckmann
Contact Randy.Bryant@cs.cmu.edu
412-268-8821
beckmann@cs.cmu.edu
Office GHC 9125 GHC 9021
Office Hours TBD TBD