Proceedings of the 16th ACM Symposium on Principles and Practice of Parallel Programming 2011
DOI: 10.1145/1941553.1941577
|View full text |Cite
|
Sign up to set email alerts
|

Communicating memory transactions

Abstract: Many concurrent programming models enable both transactional memory and message passing. For such models, researchers have built increasingly efficient implementations and defined reasonable correctness criteria, while it remains an open problem to obtain the best of both worlds. We present a programming model that is the first to have opaque transactions, safe asynchronous message passing, and an efficient implementation. Our semantics uses tentative message passing and keeps track of dependencies to enable u… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

0
10
0

Year Published

2011
2011
2020
2020

Publication Types

Select...
4
3
1

Relationship

0
8

Authors

Journals

citations
Cited by 23 publications
(10 citation statements)
references
References 28 publications
(22 reference statements)
0
10
0
Order By: Relevance
“…Similarly, Transaction Communicators [47] are a special type of object through which transactions can communicate, but again breaking isolation. Third, Communicating Memory Transactions [45] combine transactions with message passing over channels. When a message is sent, a dependency is introduced from the receiver to the sender, similar to our approach.…”
Section: Related Workmentioning
confidence: 99%
“…Similarly, Transaction Communicators [47] are a special type of object through which transactions can communicate, but again breaking isolation. Third, Communicating Memory Transactions [45] combine transactions with message passing over channels. When a message is sent, a dependency is introduced from the receiver to the sender, similar to our approach.…”
Section: Related Workmentioning
confidence: 99%
“…Other authors have proposed events-and message passing-based mechanisms; we mention transactional events (TE) [1], which are specialized to the composition of send/receive operations to simplify synchronization in communication protocols, and TIC [21], where a transaction can be split into an isolated and a non-isolated transactions; this may violate local invariants and hence TIC does not satisfy opacity. Finally, communicating memory transactions (CMT) [8] is a model combining memory transactions with the actor model yielding transactors; hence CMT can be seen as the message-oriented counterpart of TC. CMT is opaque and has an efficient implementation; however it is best suited to distributed scenarios, whereas TC and OTM are aimed to multi-threaded programming on shared memory-in fact, transactors can be easily implemented in OTM by means of queues on shared memory.…”
Section: Related Workmentioning
confidence: 99%
“…Transactional constructs without the isolation principle have been proposed as useful building blocks of distributed systems (e.g., [10,11,17,23,3,6]). Communicating transactions is such a construct, equipped with a rich theory providing techniques for proving behavioural equivalence of transactional systems [8,9,16].…”
Section: Introductionmentioning
confidence: 99%