Sciweavers

ISCA
2008
IEEE

Atom-Aid: Detecting and Surviving Atomicity Violations

14 years 7 months ago
Atom-Aid: Detecting and Surviving Atomicity Violations
Writing shared-memory parallel programs is error-prone. Among the concurrency errors that programmers often face are atomicity violations, which are especially challenging. They happen when programmers make incorrect assumptions about atomicity and fail to enclose memory accesses that should occur atomically inside the same critical section. If these accesses happen to be interleaved with conflicting accesses from different threads, the program might behave incorrectly. Recent architectural proposals arbitrarily group consecutive dynamic memory operations into atomic blocks to enforce memory ordering at a coarse grain. This provides what we call implicit atomicity, as the atomic blocks are not derived from explicit program annotations. In this paper, we make the fundamental observation that implicit atomicity probabilistically hides atomicity violations by reducing the number of interleaving opportunities between memory operations. We then propose Atom-Aid, which creates implicit ato...
Brandon Lucia, Joseph Devietti, Karin Strauss, Lui
Added 31 May 2010
Updated 31 May 2010
Type Conference
Year 2008
Where ISCA
Authors Brandon Lucia, Joseph Devietti, Karin Strauss, Luis Ceze
Comments (0)