Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Massachusetts Institute of Technology

Performance Engineering of Software Systems (Fall 2018)

Massachusetts Institute of Technology via MIT OpenCourseWare

Overview

Course Features
  • Video lectures
  • Captions/transcript
  • Lecture notes
  • Projects (no examples)
  • Assignments: programming (no examples)
  • Exams and solutions
Course Description

6.172 is an 18-unit class that provides 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, caching optimizations, parallel programming, and building scalable systems. The course programming language is C.

Syllabus

1. Introduction and Matrix Multiplication.
2. Bentley Rules for Optimizing Work.
3. Bit Hacks.
4. Assembly Language & Computer Architecture.
5. C to Assembly.
6. Multicore Programming.
7. Races and Parallelism.
8. Analysis of Multithreaded Algorithms.
9. What Compilers Can and Cannot Do.
10. Measurement and Timing.
11. Storage Allocation.
12. Parallel Storage Allocation.
13. The Cilk Runtime System.
14. Caching and Cache-Efficient Algorithms.
15. Cache-Oblivious Algorithms.
16. Nondeterministic Parallel Programming.
17. Synchronization Without Locks.
18. Domain Specific Languages and Autotuning.
19. Leiserchess Codewalk.
20. Speculative Parallelism & Leiserchess.
21. Tuning a TSP Algorithm.
22. Graph Optimization.
23. High Performance in Dynamic Languages.

Taught by

Prof. Charles Leiserson and Prof. Julian Shun

Reviews

4.9 rating, based on 7 Class Central reviews

Start your review of Performance Engineering of Software Systems (Fall 2018)

  • Thanks very much for everything; All good - learnt lots ; understanding sections . This is one of the one of the very nice answering & questions training. Instructor was passionate about the course, was helpful understanding the requirement for setting up plans and approval process.

    Once again Thanks This certificate is greatful achievement for me..

  • Niloy Deb Barma
    The "Performance Engineering of Software Systems" course from MIT via MIT OpenCourseWare in Fall 2018 was an invaluable learning experience. The course content was thoughtfully structured, covering fundamental principles and advanced techniques in s…
  • S.K.S.M Sewwandi
    this is best. "The Performance Engineering of Software Systems course was insightful and practical. The instructor provided a deep understanding of performance optimization techniques. The hands-on projects helped apply concepts to real-world scenarios. The course materials were well-structured and supported learning effectively. However, more emphasis on advanced topics would have been beneficial. Overall, a valuable course for anyone interested in optimizing software performance."
  • Profile image for Sebas Tobias
    Sebas Tobias
    Muy bueno aprendí muchas cosas y fue muy interesante para mí fue excelente todo gracias por el cursó
  • Yeboah
    Thanks very much for everything; All good - learnt lots ; Indepth understanding sections . "Questions and answers with the instructor was particularly helpful." "very nice training. Instructor was passionate about the course, was helpful understanding the requirement for setting up plans and approval process; helpful knowing what applies to my specific situation."
  • Vaisah Peter Zirra
    It was a great opportunity taking this course, I would have preferred if there was a certificate, but it was a good one tho, thank you.
  • Ary Clayton Cruz De Albuquerque
    O curso faz você ter um aprendizado a mais do que aprende em uma graduação .
    Eu gostei , só não tem certificado.

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.