Lowering the Overhead of Hybrid Transactional Memory with Transact Cache

2008 
Recent years, it has been a hot research topic on providing efficient and unbounded transactional memory support through hybrid hardware and software approach. Yet, current proposed systems which buffer transactional data in traditional data cache have high overhead and design complexity. In this paper, we propose a new design approach to build hybrid transactional memory system. Our approach adds a new L1 cache, named TCache, to buffer transactional data for the active transaction executed on the processor. The obvious benefit of TCache is that software logging for un-overflowed blocks are no longer needed. To handle transactional overflow, we propose two alternative schemes: the ``buffer'' approach which writes new value in software, and the ``log'' approach which writes new value to memory but logs old value in software. TCache introduces exception based hardware and software co-operation approach which is more smoothly and easy to implement. We also propose a scheme which further optimizes our baseline system by saving the shadow copy of transactional blocks in TCache, which accelerates the re-open process if transaction is re-executed.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    13
    References
    1
    Citations
    NaN
    KQI
    []