TRT: Transactional Read Tracking
Amir Ghanbari Bavarsad, Ehsan Atoofian · 2012
Many recent Software Transactional Memory (STM) algorithms exploit a global clock to maintain consistency among transactions. While this method is simple to implement it results in contention over the global clock, especially when transactions commit frequently. In this paper, we introduce Transactional Read Tracking (TRT) which does not exploit any central data structure to maintain consistency of transactions. TRT tracks transactional read and write operations and aborts transactions if they conflict over a shared memory location. As such, TRT maintains consistency and eliminates the overhead of the global clock. Our experimental results reveal that this method is effective and is able to improve performance of transactional applications up to 63%.