~/talk

Automatic Caching for C++ Builds: Merging Git and the Compiler

Talkat C++ on Sea 2023 · 2023-06-28..06-30· [devops-and-delivery]
slides:none on file

Claim: merge Git with the build system so Ninja and CMake reuse actual build outputs by commit id rather than mtimes. The system uses Git mirroring, binds Git to Ninja, creates content-addressable snapshots of build trees, packs them with Zstd pack compression and exposes them to remote builders so a 10 GB build tree can be represented in a few megabytes and 300 historical revisions fit in ~100 MB. Works cross platform and yields fast incremental CI and local rebuilds.

AI-written summary · about

  1. 0:00Introduction
  2. 2:30Why builds are slow
  3. 5:42Limitations of file timestamps
  4. 7:30Git for build trees fails
  5. 9:17Git meets build systems
  6. 10:42Introducing Build Checker
  7. 12:30TP’s caching in practice
  8. 14:59Live demo
  9. 17:33Open source and closing
~/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.