Transactional Tasks: Parallelism in Software Transactions (Artifact)
2016
Online
Elektronische Ressource
Many programming languages support different concurrency models. In practice these models are often combined, however the semantics of the combinations are not always well-defined. We studied the combination of futures and Software Transactional Memory. We introduce transactional tasks, a mechanism to create futures in a transaction. Transactional tasks allow the parallelism in a transaction to be exploited, while providing safe access to the state of their encapsulating transaction. We created Clojure-TxTk, a fork of Clojure with support for transactional tasks. Furthermore, we ported two applications from the STAMP benchmark suite, and extended these to use transactional tasks: Labyrinth-TxTk and Bayes-TxTk. Lastly, TxTk-Redex is a machine-executable implementation of the operational semantics, in PLT Redex.
Titel: |
Transactional Tasks: Parallelism in Software Transactions (Artifact)
|
---|---|
Link: | |
Veröffentlichung: | 2016 |
Medientyp: | Elektronische Ressource |
DOI: | 10.4230.DARTS.2.1.13 |
Schlagwort: |
|
Sonstiges: |
|