Towards a universal construction for transaction-based multiprocess programs

  • Authors:
  • Tyler Crain;Damien Imbs;Michel Raynal

  • Affiliations:
  • IRISA, Campus de Beaulieu, 35042 Rennes Cedex, France;Damien Imbs Instituto de Matemáticas, UNAM, 04510 Mexico, Mexico;IRISA, Campus de Beaulieu, 35042 Rennes Cedex, France and Institut Universitaire de France, France

  • Venue:
  • Theoretical Computer Science
  • Year:
  • 2013

Quantified Score

Hi-index 5.23

Visualization

Abstract

The aim of a Software Transactional Memory (STM) system is to discharge the programmer from the explicit management of synchronization issues. The programmer's job resides in the design of multiprocess programs in which processes are made up of transactions, each transaction being an atomic execution unit that accesses concurrent objects. The important point is that the programmer has to focus her/his efforts only on the parts of the code which have to be atomic execution units without worrying on the way how the corresponding synchronization has to be realized. Non-trivial STM systems allow transactions to execute concurrently and rely on the notion of commit/abort of a transaction in order to solve their conflicts on the objects they access simultaneously. In some cases, the management of aborted transactions is left to the programmer. In other cases, the underlying system scheduler is appropriately modified or an underlying contention manager is used in order for each transaction to be (''practically always'' or with high probability) eventually committed. This paper presents a deterministic STM system in which (1) every invocation of a transaction is executed exactly once and (2) the notion of commit/abort of a transaction remains unknown to the programmer. This system, which imposes restrictions neither on the design of processes nor on their concurrency pattern, can be seen as a step towards the design of a deterministic universal construction to execute transaction-based multiprocess programs on top of a multiprocessor. Interestingly, the proposed construction is lock-free (in the sense that it uses no lock).