~/talk

Understanding Compiler Optimization

Talkat Meeting C++ 2015 · 2015-12-04..12-05· [rust]
slides:none on file

Claim: understanding performance means understanding optimizers, because compilers do the real collapsing of C++ abstractions. Examples and tools are concrete: LLVM IR with SSA and PHI nodes (SSA obviates roughly 80–90% of classic data‑flow hacks), a bottom‑up inliner on SCCs that still misses hard variadic cases, and loop canonicalization and vectorization (unrolling, widening, legality checks, poly project). Practical build tools include UBSan and LTO; some passes work well, others (phase ordering, cross‑TU scaling) still fail in real builds.

AI-written summary · about

  1. 0:00Compiler optimization intro
  2. 3:59How compilers model code
  3. 11:23LLVM’s intermediate representation
  4. 22:25Canonicalization and cleanup
  5. 23:31Software performance abstractions
  6. 25:58Inlining as critical optimization
  7. 39:28Optimizing memory and data flow
  8. 48:29Loop optimizations importance
  9. 1:09:15Abstractions and pitfalls
  10. 1:30:28Writing compiler-friendly code
  11. 1:37:56Conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.