MIT 6.172 Performance Engineering of Software Systems

This class is a hands-on, project-based introduction to building scalable and high-performance software systems. Topics include performance analysis, algorithmic techniques for high performance, instruction-level optimizations, cache and memory hierarchy optimization, parallel programming, and building scalable distributed systems. Created by MIT OpenCourseWare.


Average Course Length

40 hours


Skill Level

Intermediate



Pick a lesson


1: Lecture 1
2: Lecture 2
3: Lecture 3
4: Lecture 4
5: Industry mentor overview
6: Lecture 5
7: Lecture 6
8: Lecture 7
9: Lecture 8
10: Lecture 9
11: Lecture 10
12: Lecture 11
13: Lecture 12
14: Lecture 13
15: Lecture 14
16: Lecture 15
17: Lecture 16
18: Lecture 17
19: Lecture 18
20: Lecture 19
21: Lecture 20
22: Lecture 21
23: Lecture 22
24: Lecture 23