A. Matveev, и N. Shavit. Proceedings of the 7th ACM SIGPLAN Workshop on Transactional Computing, (февраля 2012)
Аннотация
The designs of software transactional memory (STM) algorithms to
date have been optimistic: transactions that run into inconsistencies
abort and retry. The common view is that this optimistic approach
gives significant performance benefits, and yet we know that it also
results in complex programming, limitations on what can be executed within a transaction, and difficult debugging. This is a burden that does not exist in the pessimistic lock-based programming
model transactions are meant to replace.
This paper introduces the first STM system that is fully pessimistic, that is, each and every transaction, whether reading or
writing, is executed once and never aborts. The benefits of this fully
pessimistic STM are that programming with it is logically as simple
as with locks, allowing I/O and system calls within a transaction,
and making the debugging process significantly simpler. Perhaps
surprisingly, we show that on many standard STM benchmarks, our
fully pessimistic STM system, which also offers full transactional
privatization, delivers performance and scalability that are comparable to that of the most efficient optimistic non-privatizing STM
systems. This puts in question our commonly accepted understanding of the tradeoffs between pessimism and performance.
%0 Conference Paper
%1 matveev2012towards
%A Matveev, Alexander
%A Shavit, Nir
%B Proceedings of the 7th ACM SIGPLAN Workshop on Transactional Computing
%D 2012
%K STM performance pessimistic
%T Towards a Fully Pessimistic STM Model
%U http://transact2012.cse.lehigh.edu/papers/matveev.pdf
%X The designs of software transactional memory (STM) algorithms to
date have been optimistic: transactions that run into inconsistencies
abort and retry. The common view is that this optimistic approach
gives significant performance benefits, and yet we know that it also
results in complex programming, limitations on what can be executed within a transaction, and difficult debugging. This is a burden that does not exist in the pessimistic lock-based programming
model transactions are meant to replace.
This paper introduces the first STM system that is fully pessimistic, that is, each and every transaction, whether reading or
writing, is executed once and never aborts. The benefits of this fully
pessimistic STM are that programming with it is logically as simple
as with locks, allowing I/O and system calls within a transaction,
and making the debugging process significantly simpler. Perhaps
surprisingly, we show that on many standard STM benchmarks, our
fully pessimistic STM system, which also offers full transactional
privatization, delivers performance and scalability that are comparable to that of the most efficient optimistic non-privatizing STM
systems. This puts in question our commonly accepted understanding of the tradeoffs between pessimism and performance.
@inproceedings{matveev2012towards,
abstract = {The designs of software transactional memory (STM) algorithms to
date have been optimistic: transactions that run into inconsistencies
abort and retry. The common view is that this optimistic approach
gives significant performance benefits, and yet we know that it also
results in complex programming, limitations on what can be executed within a transaction, and difficult debugging. This is a burden that does not exist in the pessimistic lock-based programming
model transactions are meant to replace.
This paper introduces the first STM system that is fully pessimistic, that is, each and every transaction, whether reading or
writing, is executed once and never aborts. The benefits of this fully
pessimistic STM are that programming with it is logically as simple
as with locks, allowing I/O and system calls within a transaction,
and making the debugging process significantly simpler. Perhaps
surprisingly, we show that on many standard STM benchmarks, our
fully pessimistic STM system, which also offers full transactional
privatization, delivers performance and scalability that are comparable to that of the most efficient optimistic non-privatizing STM
systems. This puts in question our commonly accepted understanding of the tradeoffs between pessimism and performance.},
added-at = {2013-02-19T12:37:36.000+0100},
author = {Matveev, Alexander and Shavit, Nir},
biburl = {https://www.bibsonomy.org/bibtex/261f0cc05ef93a0f505baa7adc568c23a/gron},
booktitle = {Proceedings of the 7th ACM SIGPLAN Workshop on Transactional Computing},
interhash = {c14f2d9351749ed52708f4e8b067ca8a},
intrahash = {61f0cc05ef93a0f505baa7adc568c23a},
keywords = {STM performance pessimistic},
month = {February},
timestamp = {2013-02-19T12:37:36.000+0100},
title = {Towards a Fully Pessimistic STM Model},
url = {http://transact2012.cse.lehigh.edu/papers/matveev.pdf},
year = 2012
}