...
| Day | Date (2012) | Topic | Handouts | Slides | Homework Assigned | Homework Due |
---|---|---|---|---|---|---|---|
1 | Mon | Jan 9 | Lecture 1: The What and Why of Parallel Programming |
|
|
| |
2 | Wed | Jan 11 | Lecture 2: Task Creation & Termination using Async & Finish |
|
|
|
|
3 | Fri | Jan 13 | Lecture 3: Computation Graphs, Abstract Performance Metrics |
| HW2 | HW1 | |
- | Mon | Jan 16 | School Holiday |
|
|
|
|
4 | Wed | Jan 18 | Lecture 4: Futures --- Tasks with Return Values |
|
| ||
5 | Fri | Jan 20 | Lecture 5: Parallel Array Sum and Array Reductions |
| HW2 | ||
6 | Mon | Jan 23 | Lecture 6: Data Races and How to Avoid Them | HW3 |
| ||
7 | Wed | Jan 25 | Lecture 7: Parallel Prefix Sum, Forall parallel loops |
|
|
| |
8 | Fri | Jan 27 | Lecture 8: Parallel Quicksort |
|
|
| |
9 | Mon | Jan 30 | Lecture 9: PRAM model, Amdahl's Law |
|
|
|
|
10 | Wed | Feb 01 | Lecture 10: Critical sections and the Isolated statement |
|
|
| |
11 | Fri | Feb 03 | Lecture 11: Abstract vs Real Performance, Work-sharing & Work-stealing schedulers |
|
|
|
|
12 | Mon | Feb 06 | Lecture 12: Barrier Synchronization in Forall Loops |
|
| HW3 | |
13 | Wed | Feb 08 | Lecture 13: Barrier Synchronization in Forall Loops (contd) |
| HW4 |
| |
14 | Fri | Feb 10 | Lecture 14: Point-to-point Synchronization and Phasers |
|
|
|
|
15 | Mon | Feb 13 | Lecture 15: Point-to-point Synchronization and Phasers (contd) |
|
| ||
16 | Wed | Feb 15 | Lecture 16: Advanced Phaser topics |
|
|
| HW4 |
17 | Fri | Feb 17 | Lecture 17: Dataflow Programming and Data-Driven Futures |
|
|
| HW4 |
18 | Mon | Feb 20 | Lecture 18: Dataflow Programming and Data-Driven Futures, contd. |
|
|
| |
19 | Wed | Feb 22 | Lecture 19: Midterm Summary |
|
|
|
|
- | Fri | Feb 24 | Exam 1 (in class) |
|
|
|
|
- | M-F | Feb 27 - Mar 02 | Spring Break |
|
|
| |
20 | Mon | Mar 05 | Lecture 20: Java Atomic Variables |
|
| HW5 |
|
21 | Wed | Mar 07 | Lecture 21: Java Concurrent Collections |
|
|
|
|
22 | Fri | Mar 09 | Lecture 22: Linearizability of Concurrent Objects |
|
|
| |
23 | Mon | Mar 12 | Lecture 23: Task Affinity with Places |
|
| ||
24 | Wed | Mar 14 | Lecture 24: Task Affinity with Places, contd. |
|
|
| |
25 | Fri | Mar 16 | Lecture 25: Map Reduce |
|
|
| |
26 | Mon | Mar 19 | Lecture 26: Map Reduce, contd. |
|
| HW5 | |
27 | Wed | Mar 21 | Lecture 27: Dataflow Programming with Intel Concurrent Collections |
|
| HW6 HW6 |
|
- | Fri | Mar 23 | Midterm Recess |
|
|
|
|
28 | Mon | Mar 26 | Lecture 28: Java Threads |
|
|
| |
29 | Wed | Mar 28 | Lecture 29: Java Threads (contd), synchronized statement |
|
|
|
|
30 | Fri | Mar 30 | Lecture 30: Java synchronized statement with wait/notify |
|
|
|
|
31 | Mon | Apr 02 | Lecture 31: Advanced locking in Java |
|
| ||
32 | Wed | Apr 04 | Lecture 32: Java Executors and Synchronizers |
|
| HW6 | |
33 | Fri | Apr 06 | Lecture 33: Volatile Variables and Java Memory Model |
|
| HW7 |
|
34 | Mon | Apr 09 | Lecture 34: GPGPU programming with CUDA |
|
|
|
|
35 | Wed | Apr 11 | Lecture 35: CUDA contd. |
|
|
|
|
36 | Fri | Apr 13 | Lecture 36: Liveness and Progress Guarantees |
|
|
|
|
37 | Mon | Apr 16 | Lecture 37: Introduction to MPI |
|
|
|
|
38 | Wed | Apr 18 | Lecture 38: Introduction to MPI (contd) |
|
|
|
|
39 | Fri | Apr 20 | Lecture 39: Course Summary |
|
| Exam 2 (Take-home) | HW7 |
- | Fri | Apr 27 | Exam 2 due |
|
|
| Exam 2 |
...
You will be expected to follow the Honor Code in all homeworks and exams. All submitted homeworks are expected to be the result of your individual effort. You are free to discuss course material and approaches to problems with your other classmates, the teaching assistants and the professor, but you should never misrepresent someone else’s work as your own. If you use any material from external sources, you must provide proper attribution . Take-home exams([as shown here|http://www.dartmouth.edu/~writing/sources/]). Exams 1 and 2, which are pledged under the Honor Code, test your individual understanding and knowledge of the material. Collaboration on exams is strictly forbidden. Finally, it is also your responsibility to protect your homeworks and exams from unauthorized access. The work you submit for this class is expected to be the result of your own work and that of your homework partner. You are free to discuss course material and approaches to problems with your other classmates, the teaching assistants and the professor, but you should never misrepresent someone else’s work as your own. If you use any material from online sources, you must provide proper attribution (as shown here) in your homework/programming assignment turnins. A tutorial on how and when to cite sources is here. You should explain what value you have added to work taken from online sources. Finally, it is also your responsibility to protect your work from unauthorized access. I will expect you to follow the Honor Code in this course.
Graded homeworks will be returned to you via email, and exams as marked-up hardcopies. If you believe we have made an error in grading your homework or exam, please bring the matter to our attention within one week.
Past Offerings of COMP 322
...