A Lazy Approach for Supporting Nested Transactions
Lee Baugh, Craig B. Zilles · Illinois Digital Environment for Access to Learning and Scholarship (University of Illinois at Urbana-Champaign) · 2006
Transactional memory (TM) is a compelling alternative to traditional synchronization, and implementing TM primitives directly in hardware offers a potential perfor-mance advantage over software-based methods. In this paper, we demonstrate that many of the actions asso-ciated with transaction abort and commit may be per-formed lazily – that is, incrementally, and on demand. This technique is ideal for hardware, since it requires little space or work; in addition, it can improve perfor-mance by sparing accesses to committing or aborting locations from having to stall until the commit or abort completes. We further show that our lazy abort and com-mit technique supports open nesting and orElse, two language-level proposals which rely on trans-actional nesting. We also provide design notes for supporting lazy abort and commit on our own hard-ware TM system, based on VTM. 1.