~/talk

A Study of Real-world Data Races in Golang

Talkat PLDI 2022 · 2022-06-13..06-17· [go, concurrency]
links:none on file
slides:none on file

Deploys Go's dynamic race detector (ThreadSanitizer via Go's -race) across a 57M‑LOC monorepo, compiling and running unit tests daily, and reports 3.5k races found in one year with ~2k fixed via ~1.2k patches by ~600 engineers; detector costs 2–20x runtime overhead and 5–10x memory, finds 10–20 new races daily, and exposes concrete, repeatable patterns: closure capture, concurrent map mutation, mixing channels with shared memory, and pointer-vs-value semantics.

AI-written summary · about

  1. 0:00Concurrency in Go
  2. 2:20Data race detection
  3. 3:55Deploying the detector
  4. 6:30Real-world findings
  5. 7:40Common race patterns
  6. 14:40Conclusion and future work
  7. 15:40Q&A session
~/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.