6.172 is an 18-unit class that provides a hands-on, project-based introduction to building scalable and high-performance software systems.

FREE
This course includes
Hours of videos

638 years, 9 months

Units & Quizzes

23

Unlimited Lifetime access
Access on mobile app
Certificate of Completion

Topics include performance analysis, algorithmic techniques for high performance, instruction-level optimizations, caching optimizations, parallel programming, and building scalable systems. The course programming language is C

Course Currilcum

  • Introduction and Matrix Multiplication Unlimited
  • Bentley Rules for Optimizing Work Unlimited
  • Bit Hacks Unlimited
  • Assembly Language & Computer Architecture Unlimited
  • C to Assembly Unlimited
  • Multicore Programming Unlimited
  • Races and Parallelism Unlimited
  • Analysis of Multithreaded Algorithms Unlimited
  • What Compilers Can and Cannot Do Unlimited
  • Measurement and Timing Unlimited
  • Storage Allocation Unlimited
  • Parallel Storage Allocation Unlimited
  • The Cilk Runtime System Unlimited
  • Caching and Cache-Efficient Algorithms Unlimited
  • Cache-Oblivious Algorithms Unlimited
  • Nondeterministic Parallel Programming Unlimited
  • Synchronization Without Locks Unlimited
  • Domain Specific Languages and Autotuning Unlimited
  • Leiserchess Codewalk Unlimited
  • Speculative Parallelism & Leiserchess Unlimited
  • Tuning a TSP Algorithm Unlimited
  • Graph Optimization Unlimited
  • High Performance in Dynamic Languages Unlimited