Enhanced Concurrency Control with Transactional NACKs

ACM SIGPLAN Workshop on Transactional Computing (TRANSACT), 2013


Abstract

Transactional-memory systems must dynamically adjust concurrency to provide robust performance and fairness, but obtaining accurate runtime information can be expensive. This paper identifies transactional NACKs as a low-cost source of dependency and utilization information and proposes three uses: accurate deadlock detection, dependency-tree construction, and carrier sensing. A prototype concurrency controller using these techniques improves the performance of hardware and hybrid transactional-memory systems.