A Safety-First Approach to Memory Models

IEEE Micro, Top Picks from the 2012 Computer Architecture Conferences, 33(3):96-104, May/June 2013.
Abhayendra Singh, Satish Narayanasamy, Daniel Marino, Todd Millstein, Madanlal Musuvathi
Recent efforts to standardize concurrency semantics for programming languages assume memory accesses are data-race-free ("safe") by default and require explicit annotations on data races ("unsafe" accesses). Simple programming mistakes can result in counterintuitive program semantics. Instead, the authors argue for and demonstrate a safety-first approach that treats every memory access as potentially unsafe unless proven otherwise.

[PDF | Project Page]