Transactional Tasks: Parallelism in Software Transactions (Artifact)
At a glance
- الاستشهادات
- 0
- المراجع
- 0
- Comments
- 0
Abstract
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.
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
Comments
تسجيل الدخول للانضمام إلى النقاش.