Software Transactional Memory
Software transactional memory (STM) has been proposed as a promising programming paradigm for shared‐memory multithreaded programs as an alternative to conventional lock‐based synchronization primitives. STM is intended to facilitate the development of complex concurrent software by reducing the bur...
Saved in:
| Published in: | Programming multi‐core and many‐core computing systems pp. 81 - 98 |
|---|---|
| Main Author: | |
| Format: | Book Chapter |
| Language: | English |
| Published: |
Hoboken, NJ, USA
John Wiley & Sons, Inc
24.01.2017
|
| Subjects: | |
| ISBN: | 0470936908, 9780470936900 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | Software transactional memory (STM) has been proposed as a promising programming paradigm for shared‐memory multithreaded programs as an alternative to conventional lock‐based synchronization primitives. STM is intended to facilitate the development of complex concurrent software by reducing the burden of programming complexity involved in writing concurrent code. This chapter provides a background on STM and examines STM from a programmer's perspective. It discusses the different semantic models associated with some of the current STM proposals. It also provides a quick overview of the various STM design dimensions, the evolution of STM over the years, and a short overview of STM performance. A wide variety of STM techniques, inspired by database algorithms, have been explored in order to determine the right combination of strategies that suit the requirements of concurrent applications. Transactional memory semantics describe the expected or allowed outcomes of various memory operations on shared data accessed by concurrent threads of a transactional memory application. |
|---|---|
| ISBN: | 0470936908 9780470936900 |
| DOI: | 10.1002/9781119332015.ch4 |

