CDSchecker: checking concurrent data structures written with C/C++ atomics
Abstract
Writing low-level concurrent software has traditionally required intimate knowledge of the entire toolchain and often has involved coding in assembly. New language standards have extended C and C++ with support for low-level atomic operations and a weak memory model, enabling developers to write portable and efficient multithreaded code.
DOI 10.1145/2509136.2509514