Date |
Topic |
Assignment |
|
Notes
- The exact topics of the lectures are subject to change.
- We do not anticipate changing any of the other dates (exams, assignments, etc.)
- To watch the lecture videos, sign in to YouTube using your andrew.cmu.edu account.
|
Aug |
31 |
Why parallelism?
(slides;
Lecture 1 videos: Part1,
Part2) |
|
|
Sep |
2 |
Modern multicore processors
(slides;
lecture 2 video) |
|
Sep |
4 |
Parallel programming models
(slides;
lecture 3 video) |
|
|
|
Sep |
9 |
Parallel programming basics (slides , lecture 4 video) |
Assignment 1 due for waitlisted students |
|
Sep |
11 |
Work distribution and scheduling (slides , lecture 5 video) |
|
|
|
Sep |
14 |
Graphic processing units and CUDA (slides ,
video (part 1/2),
video (part 3)) |
Assignment 1 due for registered students, assignment 2 out
|
|
Sep |
16 |
Locality, communication, and contention
(slides ,
lecture 7 video) |
|
|
Sep |
18 |
Application case studies
(slides ,
lecture 8 video) |
|
|
|
Sep |
21 |
Workload-driven performance evaluation (pdf
, video (part 1), video (part 2), video (part 3)) |
|
|
Sep |
23 |
Snooping-based cache coherence (pdf ,
video (part 1),
video (part 2),
video (part 3)) |
|
|
Sep |
25 |
Directory-based cache coherence (pdf ,
video (part 1),
video (part 2)) |
|
|
|
Sep |
28 |
Snooping implementation (pdf ,
video (live)) |
Assignment 2 due, assignment 3 out |
|
Sep |
30 |
Performance Measurement and Tuning (pdf,
video (part 1),
video (part 2)) |
Written assignment 1 out (via Canvas) |
|
Oct |
2 |
Memory consistency
(slides ,
lecture 14 video) |
|
|
|
Oct |
5 |
Scaling a Website
(slides ,
lecture 15 video (part 1),
exam review video (part 2)) |
Written assignment 1 + peer review due |
|
Oct |
7 |
Interconnection networks (pdf,
pptx ,
lecture 16 video (part 1),
lecture 16 video (part 2)) |
|
|
Oct |
9 |
Exam 1 |
|
|
|
Oct |
12 |
Implementing synchronization (pdf,
video (part 1),
video (part 2),
video (part 3)) |
|
|
Oct |
14 |
Fine-grained synchronization, lock-free programming
(pdf,
video (part 1),
video (part 2),
video (part 3)) |
|
|
|
Oct |
19 |
Transactional memory (pdf,
video (part 1),
video (part 2),
video (part 3)) |
|
|
Oct |
21 |
Heterogenous parallelism (pdf,
video (part 1),
video (part 2),
video (part 3)) |
|
|
|
Oct |
26 |
Guest lecture (Dave O'Hallaron, ground motion modeling and simulation)
(video,
Tech Report) |
|
|
Oct |
28 |
Tolerating latency through prefetching
(slides ,
lecture 22 video) |
Assignment 4 due, Project assignment out
(pdf) |
|
|
Oct |
30 |
Domain-specific programming languages
(slides ,
lecture 23 video) |
|
|
|
Nov |
2 |
Project Idea Meetings |
|
|
Nov |
4 |
Domain-specific programming on graphs
(slides ,
lecture 24 video) |
|
|
Nov |
6 |
Deep neural networks
(slides ,
lecture 25 video) |
|
|
|
Nov |
9 |
MPI, OpenMP, Cilk implementation
(Part A slides,
Part B slides,
Part A video (MPI),
Part B video (OMP, Cilk)) |