Date | Topic and/or Event | Readings |
September 10 | Lecture 01: Introduction; Programming Project 1: Introduction to Jacobi Iteration [PDF] out | Topic Notes: Introduction and Overview |
September 13 | Lecture 02: Java Threads; Lab 1: Java Threads Practice [HTML] [PDF] | Pacheco Ch. 1; Topic Notes: Java Threads |
September 17 | Lecture 03: Decomposition Methods, Basics of Critical Sections | Pacheco Ch. 2 (see lecture page for focus sections) |
September 20 | Lecture 04: C Programming for Scientific Computation; Programming Project 2: Jacobi Iteration in C out | |
September 24 | Lecture 05: Speedup and Scalability; Stampede2; Lab 2: Stampede2 Setup | |
September 27 | Lecture 06: MPI Introduction; Lab 3: Processes and MPI Introduction; Lab 4: Point to Point Communication | Pacheco Ch. 3.1-3.3 |
October 1 | Lecture 07: MPI Point to Point Communication | |
October 4 | Lecture 08: Non-Blocking Messages; Lab 5: Non-Blocking Messages; Lab 6: MPI on Stampede2 | |
October 8 | Lecture 09: MPI Collective Communication; Lab 7: Collective Communication; Programming Project 3: Parallelizing Jacobi Iteration | Pacheco Ch. 3.4 |
October 11 | Lecture 10: More MPI Examples; Lab 8: More Collective Communication | Topic Notes: Matrix-Matrix Multiplication with MPI |
October 15 | Lecture 11: MPI Wrapup | |
October 18 | No Class: Fall Break | |
October 22 | Lecture 12: MPI Bag of Tasks; Review; Lab/Project Work | |
October 25 | Lecture 13: Midterm Exam | |
October 29 | Lecture 14: Introduction to Pthreads; Final Project Out; Lab 9: Introduction to pthreads | Pacheco Ch. 4.1-4.2 |
November 1 | Lecture 15: Critical Sections and Synchronization with pthreads; Programming Project 4: Pthreads Programming Out | Topic Notes: Critical Sections with POSIX Threads |
November 5 | Lecture 16: Pthreads Examples | |
November 8 | Lecture 17: Introduction to OpenMP | Topic Notes: OpenMP |
November 12 | Lecture 18: More OpenMP; Lab 10: OpenMP Practice | |
November 15 | Lecture 19: OpenMP Practice | |
November 19 | Lecture 20: Scientific Computation | Topic Notes: Scientific Computation |
November 22 | Lecture 21: Scientific Computation | |
November 26 | No Class: Happy Thanksgiving! | |
November 29 | Lecture 22: Multithreaded Quadtree Solver; Partitioning and Dynamic Load Balancing | |
December 3 | Lecture 23: Distributed Data Structures; Partitioning and Dynamic Load Balancing | Topic Notes: Partitioning and Dynamic Load Balancing; Papers: ANM 1996, JPDC 1997 |
December 6 | Lecture 24: Parallelizations of Traveling Salesperson; Lab 11: Traveling Salesperson Problem | Multilevel k-way Partitioning Scheme for Irregular Graphs |
December 10 | Lecture 25: Parallelizations of Traveling Salesperson | |
December 13 | Lecture 26: Final Project Presentations | |
December 15-18 | Take-Home Final Exam | |
|