Data race detection
Data races are nasty kinds of bugs; rare, hard to replicate and follow Murphy's law. Race detector find them? Learn how!
Data races are nasty kinds of bugs; rare, hard to replicate and tend to occur at the worst possible moment. Their effect is undefined, detection hard, almost impossible without expensive formal verification and static analysis tools...Or is it?
This talk focuses on ThreadSanitizer, a library for detecting race conditions at run-time. It originated in clang & C++ community and its use spread to go (-race), rust, java, and some other languages.
It covers how it works conceptually, and necessary background for its understanding.
> Skill level: advanced
> Duration: 25 min
Neven’s parents committed a grave mistake, and at the age of 12 introduced him to Pascal and Logo. Since then he's programmed in various languages, from C, C++ to Haskell and Go. He saw his first big system during his Facebook 2015 summer internship, and since then worked on various jobs from building a DNA deep learning base-caller to a real-time cryptocurrency bot in Go.
Currently, his passion lies in DevOps, Kubernetes and the CNCF landscape, as well as performance engineering, monitoring, and system observability.