Schedule
This schedule should be considered tentative and subject to change, at least until it actually takes place!
| Week | Day | Date | Notes and readings | HW | 
|---|---|---|---|---|
| 1 | Tue, | Aug 22 | Introduction | |
| Thu, | Aug 24 | Performance basics [Notes] | ||
| 2 | Tue, | Aug 29 | Single processor architecture | 
        
  | 
    
| Thu, | Aug 31 | Basic optimizations | 
        
  | 
    |
| 3 | Tue, | Sep 05 | Basic optimizations | 
        
  | 
    
| Thu, | Sep 07 | Parallel machines and models | ||
| 4 | Tue, | Sep 12 | Parallelism and locality in simulations | |
| Thu, | Sep 14 | Parallelism and locality in simulations | 
        
  | 
    |
| 5 | Tue, | Sep 19 | Distributed memory programming | |
| Thu, | Sep 21 | Distributed memory programming | 
        
  | 
    |
| 6 | Tue, | Sep 26 | Shared memory programming | 
        
  | 
    
| Thu, | Sep 28 | Shared memory programming | 
        
  | 
    |
| 7 | Tue, | Oct 03 | Heterogeneity and accelerators | 
        
  | 
    
| Thu, | Oct 05 | Heterogeneity and accelerators [Notes] | ||
| 8 | Tue, | Oct 10 | Fall break | |
| Thu, | Oct 12 | VMs, containers, and clouds | 
        
  | 
    |
| 9 | Tue, | Oct 17 | Dense linear algebra | |
| Thu, | Oct 19 | Dense linear algebra | 
        
  | 
    |
| 10 | Tue, | Oct 24 | Sparse linear algebra | |
| Thu, | Oct 26 | Sparse linear algebra | ||
| 11 | Tue, | Oct 31 | Transforms and data sparsity (Damle) | |
| Thu, | Nov 02 | Asynchronous methods (Udell) | 
        
  | 
    |
| 12 | Tue, | Nov 07 | Graph partitioning | 
        
  | 
    
| Thu, | Nov 09 | Load balancing | ||
| 13 | Tue, | Nov 14 | Parallel graph algorithms | |
| Thu, | Nov 16 | The impact of floating point | ||
| 14 | Tue, | Nov 21 | Mixing languages, libraries, and frameworks | 
        
  | 
    
| Thu, | Nov 23 | Thanksgiving | ||
| 15 | Tue, | Nov 28 | Project presentations | |
| Thu, | Nov 30 | Project presentations |