This schedule should be considered tentative and subject to change, at least until it actually takes place!

Week Day Date Readings and Slides HW
1 Tue, Jan 20 Introduction and Performance Basics
Thu, Jan 22 Single Processor Architecture and Optimization Basics
2 Tue, Jan 27 Performance Optimization
Thu, Jan 29 Performance Modeling and Roofline Model
  • HW0 due
3 Tue, Feb 03 Sources of Parallelism and Locality (Part 1)
Thu, Feb 05 Sources of Parallelism and Locality (Part 2)
4 Tue, Feb 10 Shared Memory Programming (Part 1)
Thu, Feb 12 Shared Memory Programming (Part 2)
  • HW1 due
5 Tue, Feb 17 February Break
Thu, Feb 19 Load Balancing and Work Stealing
6 Tue, Feb 24 Distributed Memory Programming (Part 1)
Thu, Feb 26 Distributed Memory Programming (Part 2)
  • HW2 due
7 Tue, Mar 03 Dense Linear Algebra
Thu, Mar 05 Sparse Linear Algebra
8 Tue, Mar 10 Cerebras (Part 1) by Dr. Luk Burchard
Thu, Mar 12 Cerebras (Part 2) by Dr. Luk Burchard
  • H3 due
9 Tue, Mar 17 Clustering using Sparse Linear Algebra
Thu, Mar 19 High-Performance Computational Biology
10 Tue, Mar 24 GPU and GPU Programming (Part 1)
10 Tue, Mar 24 GPU and GPU Programming (Part 2)
  • HW4 due
12 Tue, Apr 07 Parallel Graph Algorithms
Thu, Apr 09 Guest Lecture by Professor Helen Xu (Georgia Tech)
13 Tue, Apr 14 Partitioned Global Address Space and NVSHMEM (Part 1)
Thu, Apr 16 Partitioned Global Address Space and NVSHMEM (Part 2)
  • HW5 due
14 Tue, Apr 21 Mixed-Precision Computation
Thu, Apr 23 Machine Learning (Part 1)
15 Tue, Apr 28 Machine Learning (Part 2)
Thu, Apr 30 Project Poster Session
  • HW6 due
16 Tue, May 05 Project Poster Session