Skip to main content
Popular Press
Transactional Memory: Architectural Support for Lock-Free Data Structures
International Symposium on Computer Architecture (ISCA 1993) (1993)
  • Eliot B. Moss
Abstract

A shared data structure is lock-free if its operations do not require mutual exclusion. If one process is interrupted in the middle of an operation, other processes will not be prevented from operating on that object. In highly concurrent systems, lock-free data structures avoid common problems associated with conventional locking techniques, including priority inversion, convoying, and difficulty of avoiding deadlock. This paper introduces transactional memory, a new multiprocessor architecture intended to make lock-free synchronization as efficient (and easy to use) as conventional techniques based on mutual exclusion. Transactional memory allows programmers to define customized read-modify-write operations that apply to multiple, independently-chosen words of memory. It is implemented by straightforward extensions to any multiprocessor cache-coherence protocol. Simulation results show that transactional memory matches or outperforms the best known locking techniques for simple benchmarks, even in the absence of priority inversion, convoying, and deadlock.

Disciplines
Publication Date
May, 1993
Citation Information
Eliot B. Moss. "Transactional Memory: Architectural Support for Lock-Free Data Structures" International Symposium on Computer Architecture (ISCA 1993) (1993)
Available at: http://works.bepress.com/eliot_moss/56/