Sciweavers

PODC
2010
ACM

Transactional predication: high-performance concurrent sets and maps for STM

14 years 4 months ago
Transactional predication: high-performance concurrent sets and maps for STM
Concurrent collection classes are widely used in multi-threaded programming, but they provide atomicity only for a fixed set of operations. Software transactional memory (STM) provides a convenient and powerful programming model for composing atomic operations, but concurrent collection algorithms that allow their operations to be composed using STM are significantly slower than their non-composable alternatives. We introduce transactional predication, a method for building transactional maps and sets on top of an underlying non-composable concurrent map. We factor the work of most collection operations into two parts: a portion that does not need atomicity or isolation, and a single transactional memory access. The result approximates semantic conflict detection using the STM’s structural conflict detection mechanism. The separation also allows extra optimizations when the collection is used outside a transaction. We perform an experimental evaluation that shows that predicatio...
Nathan Grasso Bronson, Jared Casper, Hassan Chafi,
Added 16 Aug 2010
Updated 16 Aug 2010
Type Conference
Year 2010
Where PODC
Authors Nathan Grasso Bronson, Jared Casper, Hassan Chafi, Kunle Olukotun
Comments (0)