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

2 Tue, Aug 29

Single processor architecture

  • HW0 due
Thu, Aug 31

Basic optimizations

  • P1 out
3 Tue, Sep 05

Parallel machines and models

  • HW1 due
Thu, Sep 07

Parallel machines and models

4 Tue, Sep 12

Parallelism and locality in simulations

  • P1 due
Thu, Sep 14

Parallelism and locality in simulations

  • P2 out
5 Tue, Sep 19

Distributed memory programming

  • HW2 due
Thu, Sep 21

Distributed memory programming

6 Tue, Sep 26

Shared memory programming

  • HW3 due
Thu, Sep 28

Shared memory programming

7 Tue, Oct 03

Heterogeneity and accelerators

  • HW4
Thu, Oct 05

Heterogeneity and accelerators

  • P2 due
8 Tue, Oct 10 Fall break
Thu, Oct 12

VMs, containers, and clouds

  • P3 out
9 Tue, Oct 17

Dense linear algebra

  • Final proposal
Thu, Oct 19

Dense linear algebra

10 Tue, Oct 24

Sparse linear algebra

  • HW5 due
Thu, Oct 26

Sparse linear algebra

11 Tue, Oct 31

Transforms and data sparsity (Damle)

(Bindel away)

Thu, Nov 02

Asynchronous methods (guest)

(Bindel away)

  • P3 due
12 Tue, Nov 07

Graph partitioning

  • Final check-in
Thu, Nov 09

Load balancing

13 Tue, Nov 14

Parallel graph algorithms

Thu, Nov 16

Communication avoidance

14 Tue, Nov 21

Floating point and precision

  • Final outline
Thu, Nov 23 Thanksgiving
15 Tue, Nov 28

The future of HPC

Thu, Nov 30

Project presentations

16 Tue, Dec 05

Project presentations