~/talk

Runtime Detection of Data Races in OCaml with ThreadSanitizer

Talkat OCaml 2023 · on Saturday, 2023-09-09· [concurrency, testing]
links:none on file
links:none on file
slides:none on file

ThreadSanitizer is integrated into the OCaml compiler and runtime via LLVM-style instrumentation and a runtime library that records vector clocks and shadow memory for each word so it can report true happens‑before violations and backtraces. The port handles exceptions and effects by emitting function‑entry/exit events, runs on x86_64 Linux 64‑bit only, and is merged upstream (backport to 5.1 RC3, mainline in 5.2). Expect 2x–7x slowdown, higher memory use, and missed races on unexecuted paths or evicted shadow entries.

AI-written summary · about

  1. 0:00ThreadSanitizer for OCaml
  2. 3:35How ThreadSanitizer detects races
  3. 8:11Instrumenting OCaml
  4. 13:13OCaml memory model
  5. 16:22Performance impact and status
~/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.