2008
DOI: 10.1145/1449955.1449780
|View full text |Cite
|
Sign up to set email alerts
|

Design and implementation of transactional constructs for C/C++

Abstract: This paper presents a software transactional memory system that introduces first-class C++ language constructs for transactional programming. We describe new C++ language extensions, a production-quality optimizing C++ compiler that translates and optimizes these extensions, and a highperformance STM runtime library. The transactional language constructs support C++ language features including classes, inheritance, virtual functions, exception handling, and templates. The compiler automatically instruments the… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
43
0

Year Published

2009
2009
2016
2016

Publication Types

Select...
4
3
1

Relationship

1
7

Authors

Journals

citations
Cited by 27 publications
(44 citation statements)
references
References 46 publications
1
43
0
Order By: Relevance
“…Note that our experiments with other state-of-the-art STMs [5,14,18,20] confirm our results [6]. SwissTM and the used benchmarks are available at http://lpd.epfl.ch/site/research/tmeval.…”
Section: Evaluation Settingssupporting
confidence: 84%
See 1 more Smart Citation
“…Note that our experiments with other state-of-the-art STMs [5,14,18,20] confirm our results [6]. SwissTM and the used benchmarks are available at http://lpd.epfl.ch/site/research/tmeval.…”
Section: Evaluation Settingssupporting
confidence: 84%
“…In [18], optimizations that replace full STM load and store calls with specialized, faster versions of the same calls are described. For example, some STMs can perform fast reads of memory locations that were previously accessed for writing inside the same transaction.…”
Section: Stm-ce Performancementioning
confidence: 99%
“…More recently, several STMs have been presented that use algorithms very similar to LSA [14], [15]. Riegel et al [16] show how to extend LSA so that imprecisely synchronized clocks can be used as a scalable implementation of the global commit time base.…”
Section: Related Workmentioning
confidence: 99%
“…There exist implementations of software transactional memory for many programming languages (e.g., Brevnov et al, 2008;Ni et al, 2008). Some of the problems faced by implementers is that the encapsulation of transactions is not easily enforced, and exceptions, I/O operations and global, mutable state can break the transaction abstraction.…”
Section: Software Transactional Memory In Haskellmentioning
confidence: 99%