Schedule
| August 26 |
Lesson 1: Welcome & Overview
|
|
|---|---|---|
| August 28 | Upstate PL Seminar |
|
| September 2 |
Performance and Measurement
(Adrian)
|
|
| September 4 |
Lesson 2: Representing Programs
|
|
| September 9 |
Lesson 3: Local Analysis & Optimization
|
|
| September 11 |
Lesson 3: Local Analysis & Optimization
|
|
| September 16 |
Lesson 4: Data Flow
|
|
| September 18 |
Lesson 4: Data Flow
|
|
| September 23 |
Lesson 5: Global Analysis
|
|
| September 25 |
Profiling
(Serena Zhang, Maggie Gao, Jacqueline Wen)
|
|
| September 30 |
Lesson 6: Static Single Assignment
|
|
| October 2 |
Lesson 6: Static Single Assignment
|
|
| October 7 |
SSA
(Nate Young, Amanda Wang, Jiale Lao, Ning Wang, Ziyang Chen)
|
|
| October 9 |
Lesson 7: LLVM
|
|
| October 14 | Fall break |
|
| October 16 |
Automatic Verification
(Nikil Shyamsunder, Shihan Fang, Joseph Maheshe, Ruolin Ye, I-Ting Tsai)
|
|
| October 21 |
Lesson 8: Loop Optimization
|
|
| October 23 |
Lesson 9: Interprocedural Analysis
|
|
| October 28 |
Lesson 10: Alias Analysis
|
|
| October 30 |
Alias-Based Optimization
(Cynthia Shao, Jonathan Brown, Pedro Pontes García)
|
|
| November 4 |
Lesson 11: Memory Management
|
|
| November 6 |
GC & Reference Counting
(Jeffrey Qian, Helen Ge)
|
|
| November 11 |
Lesson 12: Dynamic Compilers
|
|
| November 13 |
Dynamic Languages
(Jake Hyun, Tobi Weinberg and Adnan Armouti (Cornell Tech))
|
|
| November 18 |
Tracing
(Jeremy Ku-Benjet, Ann Zhang, Sunwoo Kim)
|
|
| November 20 |
Superoptimization
(Thomas McFarland, Vesal Bakhtazad, Nipat Chenthanakij, Arisina Banerjee)
|
|
| November 25 | Project work time |
|
| November 27 | Thanksgiving break |
|
| December 2 |
Lesson 13: Concurrency & Parallelism
|
|
| December 4 |
Lesson 14: Fast Compilers
|
|
| December 16 | Final project deadline, 4:30pm |
|