Snapshot Isolation for Software Transactional Memory
Research output: Contribution to conferences › Paper › Contributed › peer-review
Contributors
Abstract
Software transactional memory (STM) has been proposed
to simplify the development and to increase the scalability
of concurrent programs. One problem of existing STMs is
that of having long-running read transactions co-exist with
shorter update transactions. This problem is of practical im-
portance and has so far not been addressed by other papers
in this domain. We approach this problem by investigat-
ing the performance of a STM using snapshot isolation and
a novel lazy multi-version snapshot algorithm to decrease
the validation costs - which can increase quadratically with
the number of objects read in STMs with invisible reads.
Our measurements demonstrate that snapshot isolation can
increase throughput for workloads with long transactions.
In comparison to other STMs with invisible reads, we can
reduce the validation costs by using our lazy consistent snap-
shot algorithm.
to simplify the development and to increase the scalability
of concurrent programs. One problem of existing STMs is
that of having long-running read transactions co-exist with
shorter update transactions. This problem is of practical im-
portance and has so far not been addressed by other papers
in this domain. We approach this problem by investigat-
ing the performance of a STM using snapshot isolation and
a novel lazy multi-version snapshot algorithm to decrease
the validation costs - which can increase quadratically with
the number of objects read in STMs with invisible reads.
Our measurements demonstrate that snapshot isolation can
increase throughput for workloads with long transactions.
In comparison to other STMs with invisible reads, we can
reduce the validation costs by using our lazy consistent snap-
shot algorithm.
Details
Original language | English |
---|---|
Number of pages | 10 |
Publication status | Published - 2006 |
Peer-reviewed | Yes |
Conference
Title | ACM SIGPLAN Workshop on Languages, Compilers, and Hardware Support for Transactional Computing (TRANSACT '06), 2006. |
---|---|
Abbreviated title | TRANSACT '06 |
Conference number | |
Duration | 11 June 2006 |
Degree of recognition | International event |
Location | |
City | Ottawa |
Country | Canada |