| Month | Day | Week | Lecture | Discussion | Assignments | Readings | ||
| HW | Labs (Project) | |||||||
| Jan | 19 | Tue | 1 | Introduction: Fine Grain Parallelism (slides) & Gautam's slides | HW 1 | Alphabets & AlphaZ | Notes
1 AlphaZ Intro | |
| 21 | Thu | Equations as programs | ||||||
| 26 | Tue | 2 | ||||||
| 28 | Thu | |||||||
| Feb | 2 | Tue | 3 | Exact DataFlow Analysis of Affine Control Programs: From Loops to Equations: (slides) | HW 2 | FADA | [Fea 91a] | |
| 4 | Thu | |||||||
| 9 | Tue | 4 | Executing and Compiling Equations (scribes' notes, slides) | |||||
| 11 | Thu | Change of Basis: A key transformation (slides only first 12 pages are relevant) | Notes 2 | |||||
| 16 | Tue | 5 | ||||||
| 18 | Thu | |||||||
| 23 | Tue | 6 | Foundations (Affine Functions, Polyhedra, Representation) Alpha semantics and CoB Revisited (slides 1 and slides 2) | HW 3 | User Guide | |||
| 25 | Thu | |||||||
| Mar | 2 | Tue | 7 | Classic Systolic Arrays: Sorting, Filters, (band) Matrix operations | [Kung82] [KL80] | |||
| 4 | Thu | Rd 1 | ||||||
| 9 | Tue | 8 | Systolic Synthesis (Slides, Slides2) | Cheat Sheet | ||||
| 11 | Thu | |||||||
| 16 | Tue | 9 | Spring Break (no classes) | |||||
| 18 | Thu | |||||||
| 23 | Tue | 10 | Guibas-Kung-Thompson Array for OSP | [GKT79] | ||||
| 25 | Thu | Take-home Midterm due (in class) | ||||||
| 30 | Tue | 11 | Systolic Synthesis (recap) | |||||
| Apr | 1 | Thu | HW 4 | |||||
| 6 | Tue | 12 | Hermite Normal Form, Unimodular Completion Band MM in AlphaZ, Allocation Functions | NN Example | ||||
| 8 | Thu | |||||||
| 13 | Tue | 13 | Beyond Uniform Dependences (Code Generation in AlphaZ) | Alpha (2) | ||||
| 15 | Thu | HW 5 | ||||||
| 20 | Tue | 14 |   | |||||
| 22 | Thu | Guest Lecture (Michelle Strout) | ||||||
| 27 | Tue | 15 | AlphaZ Code Generation: Scheduled CodeGen II (Pradeep) | |||||
| 29 | Thu | |||||||
| May | 4 | Tue | 16 | Code Generation Foundations & Tiling | ||||
| 6 | Thu | |||||||
| 11 | Tue | 17 | ||||||
| 13 | Thu | Project Poster Presentations | ||||||