Transactional memory systems trade ease of programming with run-time performance losses in handling transactions. This paper
focuses on starvation effects that show up in systems where unordered transactions are committed on a demand-driven basis.
Such simple commit arbitration policies are prone to starvation. The design issues for commit arbitration policies are analyzed
and novel policies that reduce the amount of wasted computation due to roll-back and, most importantly, that avoid starvation
are proposed. We analyze in detail how to incorporate them in a TCC-like transactional memory protocol. The proposed schemes
have no impact on the common-case performance and add quite modest complexity to the baseline protocol.
Keywords Multiprocessors - transactional memory - starvation
This research is sponsored by the SARC project funded by the EU under FET. The authors are members of HiPEAC - a Network of
Excellence funded by the EU under FP6.