Schedule
January 21 |
Lesson 1: Welcome & Overview
|
|
---|---|---|
January 23 |
Performance and Measurement
(Adrian)
|
|
January 28 |
Lesson 2: Representing Programs
|
|
January 30 |
Lesson 3: Local Analysis & Optimization
|
|
February 4 |
Lesson 3: Local Analysis & Optimization
|
|
February 6 |
Lesson 4: Data Flow
|
|
February 11 |
Lesson 4: Data Flow
|
|
February 13 |
Lesson 5: Global Analysis
|
|
February 18 | February break |
|
February 20 |
Profiling
(Simon, Noah Schiff, Kabir Samsi, Allen)
|
|
February 25 |
Lesson 6: Static Single Assignment
|
|
February 27 |
Lesson 6: Static Single Assignment
|
|
March 4 |
SSA
(Neel, Dev Patel (dp673))
|
|
March 6 |
Lesson 7: LLVM
|
|
March 11 |
Automatic Verification
(Annabel Baniak, Katherine Wu, Stephanie, Max)
|
|
March 13 |
Lesson 8: Loop Optimization
|
|
March 18 |
Lesson 9: Interprocedural Analysis
|
|
March 20 |
Lesson 10: Alias Analysis
|
|
March 25 |
Alias-Based Optimization
(Michael Xing, Gerardo Teruel (gg525), Arnav Muthiayen)
|
|
March 27 |
Lesson 11: Memory Management
|
|
April 1 | Spring break |
|
April 3 | Spring break |
|
April 8 |
GC & Reference Counting
(Ethan Gabizon, Parth Sarkar, Ernest Ng)
|
|
April 10 |
Fancy Memory Management
(Bryant Park, David Han, Mariia Soroka, Lisa Li)
|
|
April 15 |
Lesson 12: Dynamic Compilers
|
|
April 17 |
Dynamic Languages
(Serena Duncan, and Ananya Goenka)
|
|
April 22 |
Tracing
(Ethan, Tean Lai (tml95))
|
|
April 24 |
Superoptimization
(Mark Barbone, Zihan Li, Sam Breckenridge)
|
|
April 29 |
Lesson 13: Concurrency & Parallelism
|
|
May 1 |
Lesson 14: Fast Compilers
|
|
May 6 |
Interactive Verification
(Edmund, Jonah Bernard, Mahmoud Elsharawy)
|
|
May 13 | Final project deadline (12pm) |
|