~/talk

What Can Compiler Benchmarks Reveal About Metaprogramming Implementation Strategies

Talkat CppCon 2022 · 2022-09-11..09-16· [rust]
links:none on file
slides:none on file

Builds a portable single-header metabench that generates millions of unique type permutations, runs on C++17 and C++20, and times compile cost via external tools (unix time) after returning a type hash. Uses supercomputer runs to sweep parameter space. Finds concrete numbers: tuple reimplementation cuts GCC compile time by ~3× (clang even more), Intel often times out, and type-based metaprogramming trades memory for speed versus slower function-based approaches. Results guide which templates, lambdas, concepts, and value tricks actually reduce compile-time.

AI-written summary · about

  1. 0:00Introduction
  2. 1:17The Question
  3. 3:21Context
  4. 5:05Metaprogramming
  5. 6:21Requirements
  6. 8:35Challenges
  7. 9:20Strategy
  8. 10:26Type sequence
  9. 15:03Type Trees
  10. 15:54args
  11. 17:24How to implement
  12. 23:07How to access them
  13. 24:32Packs
  14. 28:59Array Structure
  15. 33:34Meta Functions
  16. 37:52Compute Parmentation
  17. 42:17Compute Example
  18. 45:17Reference Timing
  19. 47:09Tuples
  20. 50:03Performance Comparison
  21. 52:52TypeBased vs FunctionBased
  22. 54:00Memory Consumption
  23. 55:14Conclusion
  24. 57:16Questions
~/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.