Normal view MARC view ISBD view

Principles of Transactional Memory [electronic resource] / by Rachid Guerraoui, Michael Kapalka.

By: Guerraoui, Rachid [author.].
Contributor(s): Kapalka, Michael [author.] | SpringerLink (Online service).
Material type: materialTypeLabelBookSeries: Synthesis Lectures on Distributed Computing Theory: Publisher: Cham : Springer International Publishing : Imprint: Springer, 2010Edition: 1st ed. 2010.Description: XIII, 179 p. online resource.Content type: text Media type: computer Carrier type: online resourceISBN: 9783031020025.Subject(s): Computer science | Coding theory | Information theory | Data structures (Computer science) | Computer Science | Coding and Information Theory | Data Structures and Information TheoryAdditional physical formats: Printed edition:: No title; Printed edition:: No titleDDC classification: 004 Online resources: Click here to access online
Contents:
Introduction -- Shared Memory Systems -- Transactional Memory: A Primer -- TM Correctness Issues -- Implementing a TM -- Further Reading -- Opacity -- Proving Opacity: An Example -- Opacity vs.\ Atomicity -- Further Reading -- The Liveness of a TM -- Lock-Based TMs -- Obstruction-Free TMs -- General Liveness of TMs -- Further Reading -- Conclusions.
In: Springer Nature eBookSummary: Transactional memory (TM) is an appealing paradigm for concurrent programming on shared memory architectures. With a TM, threads of an application communicate, and synchronize their actions, via in-memory transactions. Each transaction can perform any number of operations on shared data, and then either commit or abort. When the transaction commits, the effects of all its operations become immediately visible to other transactions; when it aborts, however, those effects are entirely discarded. Transactions are atomic: programmers get the illusion that every transaction executes all its operations instantaneously, at some single and unique point in time. Yet, a TM runs transactions concurrently to leverage the parallelism offered by modern processors. The aim of this book is to provide theoretical foundations for transactional memory. This includes defining a model of a TM, as well as answering precisely when a TM implementation is correct, what kind of properties it can ensure, what are the power and limitations of a TM, and what inherent trade-offs are involved in designing a TM algorithm. While the focus of this book is on the fundamental principles, its goal is to capture the common intuition behind the semantics of TMs and the properties of existing TM implementations. Table of Contents: Introduction / Shared Memory Systems / Transactional Memory: A Primer / TM Correctness Issues / Implementing a TM / Further Reading / Opacity / Proving Opacity: An Example / Opacity vs.\ Atomicity / Further Reading / The Liveness of a TM / Lock-Based TMs / Obstruction-Free TMs / General Liveness of TMs / Further Reading / Conclusions.
    average rating: 0.0 (0 votes)
No physical items for this record

Introduction -- Shared Memory Systems -- Transactional Memory: A Primer -- TM Correctness Issues -- Implementing a TM -- Further Reading -- Opacity -- Proving Opacity: An Example -- Opacity vs.\ Atomicity -- Further Reading -- The Liveness of a TM -- Lock-Based TMs -- Obstruction-Free TMs -- General Liveness of TMs -- Further Reading -- Conclusions.

Transactional memory (TM) is an appealing paradigm for concurrent programming on shared memory architectures. With a TM, threads of an application communicate, and synchronize their actions, via in-memory transactions. Each transaction can perform any number of operations on shared data, and then either commit or abort. When the transaction commits, the effects of all its operations become immediately visible to other transactions; when it aborts, however, those effects are entirely discarded. Transactions are atomic: programmers get the illusion that every transaction executes all its operations instantaneously, at some single and unique point in time. Yet, a TM runs transactions concurrently to leverage the parallelism offered by modern processors. The aim of this book is to provide theoretical foundations for transactional memory. This includes defining a model of a TM, as well as answering precisely when a TM implementation is correct, what kind of properties it can ensure, what are the power and limitations of a TM, and what inherent trade-offs are involved in designing a TM algorithm. While the focus of this book is on the fundamental principles, its goal is to capture the common intuition behind the semantics of TMs and the properties of existing TM implementations. Table of Contents: Introduction / Shared Memory Systems / Transactional Memory: A Primer / TM Correctness Issues / Implementing a TM / Further Reading / Opacity / Proving Opacity: An Example / Opacity vs.\ Atomicity / Further Reading / The Liveness of a TM / Lock-Based TMs / Obstruction-Free TMs / General Liveness of TMs / Further Reading / Conclusions.

There are no comments for this item.

Log in to your account to post a comment.