Slides will be uploaded the day after class

Module 1: Parsing Overview/Refresher

Date Topic Slides Notes
Thurs, Oct. 1 Syllabus and introduction link reference EAC Chapter 1
Tues, Oct. 6 Tokenizing and parsing link reference EAC Chapter 2-3
Thurs, Oct. 8 Advanced parsing (parse trees, ambiguity, implementations) link Homework 1 posted; reference EAC Chapter 3
Tues, Oct. 13 Lex and Yacc, parsing with derivatives link reference PLY Docs; parsing with derivatives paper (first 7 pages)

Module 2: Flow Analysis

Date Topic Slides Notes
Thurs, Oct. 15 Abstract syntax trees and traversals link reference EAC Chapter 5
Tues, Oct. 20 3 address code and local value numbering link reference EAC Chapter 8 (up to 8.5)
Thurs, Oct. 22 local value numbering and data flow analysis link reference EAC Chapter 8.5 and Chapter 9 (up to 9.3); Homework 2 posted;
Tues, Oct. 27 SSA and homework overview link reference EAC Chapter 9.3
Thurs, Oct. 29 SSA construction link reference EAC Chapter 9.3, Homework 1 due
Tues, Nov. 3 SSA optimizations link reference EAC Chapter 9.3.6

Module 3: Automatic Parallelization

Date Topic Slides Notes
Tues, Nov. 5 Class Canceled   Will make up after Thanksgiving
Thurs, Nov. 10 Instruction Level Parallelism (ILP) link reference Chapter 10 Dragon Book
Tues, Nov. 12 Do-all Loop Parallelism link Homework 3 posted;, Midterm Posted (on Canvas). reference Chapter 11 Dragon Book
Tues, Nov. 17 Reordering Loop Nestings and Irregular Parallelism link Slides
Thurs, Nov. 19 Implementing Parallelism link Slides

Module 4: DSLs

Date Topic Slides Notes
Tues, Nov. 24 Guest Lecture: Dietrich Geisler   reference OOPLSA 2020 paper Paper/Project proposals due
Thurs, Nov. 26 Thanksgiving Break!    
Tues, Dec. 1 DAE link Paper/Project proposals approved. DAE paper DeSC paper
Thurs, Dec. 3 DAE continued link Homework 3 due, Homework 4 posted
Tues, Dec. 8 Vertex programming (GraphIt)     Paper/Project proposals approved
Thurs, Dec. 10 Stencil Computations (Halide)     Homework 4 Due

Final

Date Topic Slides Notes
Dec. 14 Final   Final Exam Posted
Dec. 15 Final   Homework 5 due, Final project/paper reports due. Final due