A simple deterministic algorithm for guaranteeing the forward progress of transactions

This paper describes a remarkably simple deterministic (not probabilistic) contention-management algorithm for guaranteeing the forward progress of transactions - avoiding deadlocks, livelocks, and other anomalies. The transactions must be finite (no infinite loops), but on each restart, a transacti...

Full description

Bibliographic Details
Main Author: Leiserson, Charles E
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Format: Article
Published: Elsevier 2018
Online Access:http://hdl.handle.net/1721.1/114871
https://orcid.org/0000-0001-6386-5552
_version_ 1826189885815390208
author Leiserson, Charles E
author2 Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
author_facet Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Leiserson, Charles E
author_sort Leiserson, Charles E
collection MIT
description This paper describes a remarkably simple deterministic (not probabilistic) contention-management algorithm for guaranteeing the forward progress of transactions - avoiding deadlocks, livelocks, and other anomalies. The transactions must be finite (no infinite loops), but on each restart, a transaction may access different shared-memory locations. The algorithm supports irrevocable transactions as long as the transaction satisfies a simple ordering constraint. In particular, a transaction that accesses only one shared-memory location is never aborted. The algorithm is suitable for both hardware and software transactional-memory systems. It also can be used in some contexts as a locking protocol for implementing transactions "by hand.".
first_indexed 2024-09-23T08:27:25Z
format Article
id mit-1721.1/114871
institution Massachusetts Institute of Technology
last_indexed 2024-09-23T08:27:25Z
publishDate 2018
publisher Elsevier
record_format dspace
spelling mit-1721.1/1148712022-09-23T12:42:38Z A simple deterministic algorithm for guaranteeing the forward progress of transactions Leiserson, Charles E Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Leiserson, Charles E This paper describes a remarkably simple deterministic (not probabilistic) contention-management algorithm for guaranteeing the forward progress of transactions - avoiding deadlocks, livelocks, and other anomalies. The transactions must be finite (no infinite loops), but on each restart, a transaction may access different shared-memory locations. The algorithm supports irrevocable transactions as long as the transaction satisfies a simple ordering constraint. In particular, a transaction that accesses only one shared-memory location is never aborted. The algorithm is suitable for both hardware and software transactional-memory systems. It also can be used in some contexts as a locking protocol for implementing transactions "by hand.". 2018-04-23T16:54:56Z 2018-04-23T16:54:56Z 2015-12 2015-10 2018-04-19T19:31:04Z Article http://purl.org/eprint/type/JournalArticle 0306-4379 http://hdl.handle.net/1721.1/114871 Leiserson, Charles E. “A Simple Deterministic Algorithm for Guaranteeing the Forward Progress of Transactions.” Information Systems 57 (April 2016): 69–74 © 2016 Published by Elsevier Ltd https://orcid.org/0000-0001-6386-5552 http://dx.doi.org/10.1016/J.IS.2015.10.013 Information Systems Creative Commons Attribution-NonCommercial-NoDerivs License http://creativecommons.org/licenses/by-nc-nd/4.0/ application/pdf Elsevier Other univ. web domain
spellingShingle Leiserson, Charles E
A simple deterministic algorithm for guaranteeing the forward progress of transactions
title A simple deterministic algorithm for guaranteeing the forward progress of transactions
title_full A simple deterministic algorithm for guaranteeing the forward progress of transactions
title_fullStr A simple deterministic algorithm for guaranteeing the forward progress of transactions
title_full_unstemmed A simple deterministic algorithm for guaranteeing the forward progress of transactions
title_short A simple deterministic algorithm for guaranteeing the forward progress of transactions
title_sort simple deterministic algorithm for guaranteeing the forward progress of transactions
url http://hdl.handle.net/1721.1/114871
https://orcid.org/0000-0001-6386-5552
work_keys_str_mv AT leisersoncharlese asimpledeterministicalgorithmforguaranteeingtheforwardprogressoftransactions
AT leisersoncharlese simpledeterministicalgorithmforguaranteeingtheforwardprogressoftransactions