Everything about Transactional memory
Type of concurrency control mechanism
In computer science and engineering, transactional memory attempts to simplify concurrent programming by allowing a group of load and store instructions to execute in an atomic way. It is a concurrency control mechanism analogous to database transactions for controlling access to shared memory in concurrent computing. Transactional memory systems provide high-level abstraction as an alternative to low-level thread synchronization. This abstraction allows for coordination between concurrent reads and writes of shared data in parallel systems. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Transactional memoryA 5-minute orientation
- Skim a recent paper: Transactional memory systems in virtual teams: Communication antecedents and the impact of TMS components on creative processes and outcomesInfluential work since 2022
- Pick up a classic book: Religion and the Rise of CapitalismThe most-reprinted book on the subject
- Read the landmark paper: Transactional memoryCited 342 times
- Go sideways: Concurrent HaskellA closely related topic
- Go sideways: Concurrency controlA closely related topic
📖 Definitions
Noun A concurrency control mechanism analogous to database transactions for controlling access to shared memory.
🏆 Landmark papers (most cited)
Transactional memory
Software transactional memory
Subtleties of transactional memory atomicity semantics
Time-Based Software Transactional Memory
Software transactional memory
Transactional memory
Transactional Memory Coherence and Consistency
Transactional Memory: An Overview
🆕 Influential since 2022
Transactional memory systems in virtual teams: Communication antecedents and the impact of TMS components on creative processes and outcomes
Transactional Memory without Hardware Support: A Comprehensive Software-Driven Approach
Metaverse-based distance learning as a transactional distance mitigator and memory retrieval stimulant
Implementing and verifying release-acquire transactional memory in C11
No Cap, This Memory Slaps: Breaking through the Memory Wall of Transactional Database Systems with Processing-in-Memory
📚 Books worth reading
Religion and the Rise of CapitalismRichard H. Tawney · 1926
Memory, history, nationKatharine Hodgkin, Susannah Radstone · 2005- 📕Memory, metaphors, and meaningNicolae Babuts · 2009
Memories of Mass RepressionSelma Leydesdorff, Mary Chamberlain · 2009
Frames of RemembranceIwona Irwin-Zarecka · 1994
The Use and Abuse of MemoryChristian Karner · 2013
An Irish country childhoodMarrie Walsh · 1995
Commemorating WarGraham Dawson, Michael Roper · 2004
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Concurrent Haskell Concurrent Haskell (also Control.Concurrent, or Concurrent and Parallel Haskell) is an extension to the functional programming language Haskell, which…
- Concurrency control In information technology and computer science, especially in the fields of computer programming, operating systems, multiprocessors, and databases, concurrency…
- Linearizability In concurrent programming, an operation (or set of operations) is linearizable if it consists of an ordered list of invocation and response events, that…
- Lock (computer science) In computer science, a lock or mutex (from mutual exclusion) is a synchronization primitive that prevents state from being modified or accessed by multiple…
- Non-blocking algorithm In computer science, an algorithm is called non-blocking if failure or suspension of any thread cannot cause failure or suspension of another thread; for…
- Commitment ordering Commitment ordering (CO) is a class of interoperable serializability techniques in concurrency control of databases, transaction processing, and related…
- Compare-and-swap In computer science, compare-and-swap (CAS) is an atomic instruction used in multithreading to achieve synchronization. It compares the contents of a memory…
- Synchronization (computer science) In computer science, synchronization is the task of coordinating multiple processes to join up or handshake at a certain point, in order to reach an agreement…