~/talk

“Deploying C++ modules to 100s of millions of lines of code"

Talkat CppCon 2016 · 2016-09-18..09-23· [c-and-cpp, devops-and-delivery]
links:none on file
slides:none on file

Google migrates hundreds of millions of lines of C++ to Clang modules and header PCM files, using module maps and a changed protoc generator to modularize protocol buffers and reduce reparsing. Average compile time improves ~10% with up to ~50% gains in the 99th percentile, but naive rollout doubles distributed-build load because more module inputs force extra staging and recompiles. Fixes include ~10k header repairs, modularizing STL dependencies, include-scanning for modules, and splitting libraries; the approach works but exposes new build-system and tooling costs.

AI-written summary · about

  1. 0:00Introduction to Google C++
  2. 2:54Google build system basics
  3. 6:06Motivation for C++ modules
  4. 8:10Analyzing slow build causes
  5. 12:25Modules implementation plan
  6. 13:56Modules versus traditional builds
  7. 17:02Rolling out modules for protox
  8. 22:12Technical challenges and fixes
  9. 31:41Initial rollout results
  10. 38:01Optimizing the build process
  11. 40:57Lessons learned and conclusion
~/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.