International Journal of Parallel Programming

, Volume 39, Issue 3, pp 375–396

Hybrid Transactional Memory with Pessimistic Concurrency Control


    • University of Cantabria
  • Sutirtha Sanyal
    • Barcelona Supercomputing Center
  • Tim Harris
    • Microsoft Research
  • Fernando Vallejo
    • University of Cantabria
  • Ramón Beivide
    • University of Cantabria
  • Osman Unsal
    • Barcelona Supercomputing Center
  • Adrián Cristal
    • Barcelona Supercomputing Center
  • Mateo Valero
    • Barcelona Supercomputing Center
    • Universitat Politècnica de Catalunya

DOI: 10.1007/s10766-010-0158-x

Cite this article as:
Vallejo, E., Sanyal, S., Harris, T. et al. Int J Parallel Prog (2011) 39: 375. doi:10.1007/s10766-010-0158-x


Transactional Memory (TM) intends to simplify the design and implementation of the shared-memory data structures used in parallel software. Many Software TM systems are based on writer-locks to protect the data being modified. Such implementations can suffer from the “privatization” problem, in which transactional and non-transactional accesses to the same location can lead to inconsistent results. One solution is the use of Pessimistic Concurrency Control, but it entails an important performance penalty due to the need of reader-writer locking. In this paper a hybrid TM design is proposed to reduce the performance overheads caused by the use of these locks while combining three desirable features: (i) full TM functionality whether or not the architectural support is present; (ii) execution of a single common code path in software or hardware; and, (iii) immunity from the privatization problem. The analysis shows how a Hybrid TM can lose important properties, such as starvation freedom. To overcome this issue, Directory Reservations is presented, a low-cost mechanism improving existent solutions designed for Hardware TM.


Hybrid transactional memoryPessimistic concurrency controlWriter starvationDirectory reservation

Copyright information

© Springer Science+Business Media, LLC 2010