Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming 2015
DOI: 10.1145/2688500.2688510
|View full text |Cite
|
Sign up to set email alerts
|

Low-overhead software transactional memory with progress guarantees and strong semantics

Abstract: Software transactional memory offers an appealing alternative to locks by improving programmability, reliability, and scalability. However, existing STMs are impractical because they add high instrumentation costs and often provide weak progress guarantees and/or semantics.This paper introduces a novel STM called LarkTM that provides three significant features. (1) Its instrumentation adds low overhead except when accesses actually conflict, enabling low single-thread overhead and scaling well on low-contentio… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
6
0

Year Published

2015
2015
2023
2023

Publication Types

Select...
6
1

Relationship

1
6

Authors

Journals

citations
Cited by 14 publications
(7 citation statements)
references
References 61 publications
1
6
0
Order By: Relevance
“…Dice et al show that such an STM can outperform a TL2 global-clock based STM [10,11] on single-chip multicore processors. Zhang et al show that a STM using RW locks performs well for low-contention workloads [36], similar to those we used in our experiments. Our approach displays a usage for STMs using RW locks.…”
Section: Related Worksupporting
confidence: 82%
See 2 more Smart Citations
“…Dice et al show that such an STM can outperform a TL2 global-clock based STM [10,11] on single-chip multicore processors. Zhang et al show that a STM using RW locks performs well for low-contention workloads [36], similar to those we used in our experiments. Our approach displays a usage for STMs using RW locks.…”
Section: Related Worksupporting
confidence: 82%
“…To realize atomic sections with the above semantics, we use a special-purpose STM. The reason is that currently available HTM systems (e.g., Intel TSX), or fast STM systems [8,11,29,36] do either not support the combination of the following TM properties, or are not optimized for them:…”
Section: Atomic Sectionsmentioning
confidence: 99%
See 1 more Smart Citation
“…As an example, several implementations of software transactional memory (STM) reduce the overhead of the STM runtime by avoiding or minimizing unnecessary operations. One notable example is the LarkTM STM [37], which assumes every object to be readonly until a transaction attempts to modify it. Similarly, there are examples of STMs that have been integrated with language runtimes and JIT compilers [1,18] to apply common techniques such as escape analysis to reduce the overhead of STM read and write barriers.…”
Section: Minimizing Synchronization and Avoiding It At Run Timementioning
confidence: 99%
“…LarkTM [24], a Software Transactional Memory implementation uses VM safepoints for coordinating the resolution of lock conflicts with their biased reader-writer locks [2]. They partition the threads into two categories: threads executing a blocking operation (waiting, I/O, running native code, etc) and all others threads.…”
Section: Biased Reader-writer Locksmentioning
confidence: 99%