The ttrie package

[Tags:benchmark, library, mit, test]

A contention-free STM hash map. "Contention-free" means that the map will never cause spurious conflicts. A transaction operating on the map will only ever have to retry if another transaction is operating on the same key at the same time.

This is an implementation of the transactional trie, which is basically a lock-free concurrent hash trie lifted into STM. For a detailed discussion, including an evaluation of its performance, see Chapter 4 of my master's thesis.


[Skip to Readme]

Properties

Versions 0.1, 0.1.0.0, 0.1.1, 0.1.2, 0.1.2.1 (info)
Change log changelog.md
Dependencies atomic-primops (>=0.6), base (>=4.7 && <5), hashable (>=1.2), primitive (>=0.5), stm (>=2) [details]
License MIT
Copyright (c) 2014-2015 Michael Schröder
Author Michael Schröder
Maintainer mc.schroeder@gmail.com
Stability Unknown
Category Concurrency
Home page http://github.com/mcschroeder/ttrie
Bug tracker http://github.com/mcschroeder/ttrie/issues
Source repository head: git clone https://github.com/mcschroeder/ttrie.git
Uploaded Sat Nov 7 22:33:36 UTC 2015 by MichaelSchroeder
Distributions LTSHaskell:0.1.2.1, NixOS:0.1.2.1, Stackage:0.1.2.1, Tumbleweed:0.1.2.1
Downloads 574 total (10 in the last 30 days)
Votes
0 []
Status Docs available [build log]
Last success reported on 2015-11-13 [all 2 reports]

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Readme for ttrie

Readme for ttrie-0.1.2.1

A contention-free STM hash map for Haskell.

"Contention-free" means that the map will never cause spurious conflicts. A transaction operating on the map will only ever have to retry if another transaction is operating on the same key at the same time.

This is an implementation of the transactional trie, which is basically a lock-free concurrent hash trie lifted into STM. For a detailed discussion, including an evaluation of its performance, see Chapter 3 of my master's thesis.