Teaching
# 6.172: Performance Engineering of Software Systems
Lecturer, Fall 2019. Course materials.
Lecturer, Fall 2017. Course materials.
Teaching assistant, Fall 2014. Course materials.
This class has since been renamed to 6.106: Software Performance Engineering.
# Guest lectures
C to Assembly. Guest lecture in 6.106: Software Performance Engineering. Last presented Fall 2024. Handout (md).
Revisiting Matrix Multiplication. Guest lecture in 6.506: Algorithm Engineering, Spring 2023. Slides (pdf)
Chromatic Scheduling. Guest lecture in 6.172: Performance Engineering of Software Systems, Fall 2012. Slides (pdf)
# Other classes
# 6.S898: Advanced Performance Engineering for Multicore Applications
Lecturer, Spring 2017.
Lectures:
- Case Study: Matrix Multiplication. Slides (pdf)
- A Quick Introduction to the Intel Cilk Plus Runtime System. Slides (pdf)
- Comprehensive Static Instrumentation for Dynamic-Analysis Tools. Slides (pdf)
# 6.046: Design and Analysis of Algorithms
Teaching assistant, Fall 2009.
Recitations:
- Asymptotic Notation and the Master Method. Handout (pdf)
- Matrix Multiplication and Matrix Product Checking. Handout (pdf)
- Deterministic Select. Handout (pdf)
- Augmentation, Order Statistic Trees, Range Trees. Handout (pdf)
- Dynamic Programming, Viterbi Algorithm. Handout (pdf)
- Reductions, SAT to 3-SAT, 3-SAT to Vertex Cover, Adaptive Cook Reductions. Handout (pdf)
- Approximation Algorithms, Set Cover, TSP. Handout (pdf)
- Sublinear Time Algorithms, Streaming Algorithms. Handout (pdf)