article Open access

Transactional Tasks: Parallelism in Software Transactions (Artifact)

  • DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
  • Schloss Dagstuhl – Leibniz Center for Informatics
Research footprint

At a glance

Citations
0
References
0
Comments
0
Paper overview

Öz

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.

Record transparency

Publication details

DOI
10.4230/darts.2.1.13
OpenAlex
W2554516654
Document type
article
Language
EN
Source
DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
Last metadata update
Community

Comments

Oturum Açın to join the discussion.

  1. No comments yet. Start the discussion.