~/talk

Speed for Free - current state of auto vectorizing compilers

Talkat Meeting C++ 2025 · 2025-11-06..11-08· [web-performance]
links:none on file
slides:none on file

Auto-vectorization in recent compilers is now often usable at default O2 and can reach hardware limits for tight linear algebra (on the presenter’s Zen4 that’s ~32 floating point ops per cycle), but results vary: GCC and Clang differ in aggressiveness, Clang often wins at O2, hand-written intrinsics still beat generated code for tricky cases. RGB planar shuffles vectorize but emit large peeling code because masked loads/stores are missing, string find shows modest 4x–20x speedups while ideal approaches promise much more with proper masking and outer-loop vectorization.

AI-written summary · about

  1. 0:00Introduction
  2. 1:28Why vectorization matters
  3. 3:57What is vectorization
  4. 5:24Linear algebra test case
  5. 10:26Irregular data structures
  6. 17:21Nested loops and strings
  7. 25:34Compacting filtered data
  8. 29:03Legacy code results
  9. 32:44Compiler performance
  10. 35:40What compilers miss
  11. 36:44Summary & Q&A
~/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.