...
Lecture Schedule
lec3-slides
Week | Day | Date (2013) | Topic | Reading | Slides | Audio (Panopto) | Code Examples | Homework Assigned | Homework Due |
---|---|---|---|---|---|---|---|---|---|
1 | Mon | Jan 7 | Lecture 1: The What and Why of Parallel Programming | Module 1: Sections1.1, 1.2, 2.1, 2.2 |
|
| |||
2 | Wed | Jan 9 | Lecture 2: Async-Finish Parallel Programming, Data & Control Flow with Async Tasks, Computation Graphs | Module 1: Sections 1.3, 3.1, 3.2 | lec2-audio |
| |||
3 | Fri | Jan 11 | Lecture 3: Computation Graphs (contd), Parallel Speedup, Strong Scaling, Abstract Performance Metrics | Module 1: Sections 3.1, 3.2, 3.3 | lec3-slides | ArraySum1.hj | |||
42 | Mon | Jan 14 | Lecture 4: Abstract Performance Metrics (contd), Parallel Efficiency, Amdahl's Law, Weak Scaling | Module 1: Sections 3.3, 3.4 | lec4-slides | lec4-audio | Search2.hj | ||
5 | Wed | Jan 16 | Lecture 5: Data Races, Determinism, Memory Models | Module 1: Chapter 4 | lec5-slides | ||||
6 | Fri | Jan 18 | Lecture 6: Memory Models Data races (contd), Futures --- Tasks with Return Values | Module 1: Chapter 4, Section 5.1 | |||||
-3 | Mon | Jan 21 | School Holiday (Martin Luther King, Jr. Day) | ||||||
7 | Wed | Jan 23 | Lecture 7: Futures (contd) | HW2 | HW1 | ||||
8 | Fri | Jan 25 | Lecture 8: Finish Accumulators | ||||||
94 | Mon | Jan 28 | Lecture 9: Parallel Prefix Sum (Array Reductions with Associative Operators) | ||||||
10 | Wed | Jan 30 | Lecture 10: Parallel Prefix Sum (contd), | ||||||
11 | Fri | Feb 1 | Lecture 11: Forasync Loops, Forall Loops, Parallel Quicksort | ||||||
125 | Mon | Feb 04 | Lecture 12: Barrier Synchronization in Forall Loops | ||||||
13 | Wed | Feb 06 | Lecture 13:Abstract vs. Real Performance, seq clause, Forasync Chunking, | HW3 | HW2 | ||||
14 | Fri | Feb 08 | Lecture 14: Point-to-point Synchronization and Phasers | ||||||
156 | Mon | Feb 11 | Lecture 15: Phaser Accumulators, Bounded Phasers | ||||||
16 | Wed | Feb 13 | Lecture 16: Summary of Barriers and Phasers | ||||||
17 | Fri | Feb 15 | Lecture 17: Task Affinity with Places | ||||||
187 | Mon | Feb 18 | Lecture 18: Task Affinity with Places (contd) | ||||||
19 | Wed | Feb 20 | Lecture 19: Midterm Summary, Take-home Exam 1 distributed | HW4 | HW3 | ||||
- | F | Feb 22 | No Lecture (Exam 1 due by 4pm today) | ||||||
- | M-F | Feb 25- Mar 01 | Spring Break |
|
|
|
|
| |
208 | Mon | Mar 04 | Lecture 20: Critical sections and the Isolated statement |
| |||||
21 | Wed | Mar 06 | Lecture 21: Isolated statement (contd), Monitors, Actors |
| |||||
22 | Fri | Mar 08 | Lecture 22: Actors (contd) |
| |||||
239 | Mon | Mar 11 | Lecture 23: Linearizability of Concurrent Objects |
|
|
| |||
24 | Wed | Mar 13 | Lecture 24: Linearizability of Concurrent Objects (contd) |
|
| ||||
25 | Fri | Mar 15 | Lecture 25: Safety and Liveness Properties |
|
|
| |||
2610 | Mon | Mar 18 | Lecture 26: Parallel Programming Patterns |
|
|
| |||
27 | Wed | Mar 20 | Lecture 27: Introduction to Java Threads | HW5 | HW4 | ||||
28 | Fri | Mar 22 | Lecture 28: Bitonic Sort |
|
|
| |||
2911 | Mon | Mar 25 | Lecture 29: Java Threads (contd), Java synchronized statement |
|
|
| |||
30 | Wed | Mar 27 | Lecture 30: Java synchronized statement (contd), advanced locking |
|
|
| |||
- | Fri | Mar 29 | Midterm Recess | ||||||
3112 | Mon | Apr 01 | Lecture 31: Java Executors and Synchronizers |
|
| ||||
32 | Wed | Apr 03 | Lecture 32: Volatile Variables and Java Memory Model |
| HW6 | HW5 | |||
33 | Fri | Apr 05 | Lecture 33: Message Passing Interface (MPI) |
|
|
| |||
3413 | Mon | Apr 08 | Lecture 34: Message Passing Interface (MPI, contd) |
| |||||
35 | Wed | Apr 10 | Lecture 35: Cloud Computing, Map Reduce |
|
|
| |||
36 | Fri | Apr 12 | Lecture 36: Map Reduce (contd) |
|
|
| |||
3714 | Mon | Apr 15 | Lecture 37: Speculative parallelization of isolated blocks |
|
|
| |||
38 | Wed | Apr 17 | Lecture 38: Comparison of Parallel Programming Models |
|
| HW6 | |||
39 | Fri | Apr 19 | Lecture 39: Course Review, Take-home Exam 2 distributed | ||||||
- | Fri | Apr 25 | Exam 2 due |
|
|
|
|
|
...