Performance Aware Programming

Casey Muratori's online course on CPU architecture & performance


Overview

Being interested in hardware architecture and software performance, I am following Casey Muratori’s online course “Performance Aware Programming”: https://www.computerenhance.com/.

The lectures he gives focus on giving an understanding on modern CPU architecture. The underlying goal is to provide insight on the expected performance of an application and how to profile and optimize it.


Topics touched

  • Assembly Language (instruction decoding, registers uses, performance concerns, …)
  • Profiling (RDTSC, QueryPerformanceCounter)
  • SIMD Programming
  • Multithreading
  • Branch prediction
  • Caches
  • Memory Paging