@hackage lvish1.1.4
Parallel scheduler, LVar data structures, and infrastructure to build more.
Categories
License
BSD-3-Clause
Maintainer
lindsey@composition.al
Links
Versions
Installation
Dependencies (13)
- async
- atomic-primops >=0.6
- base >=4.6 && <4.9
- bits-atomic
- chaselev-deque
- containers >=0.5 Show all…
Dependents (1)
@hackage/acme-everything
Package Flags
debug
(off by default)
Activate additional debug assertions, and printed output.
chaselev
(off by default)
Use the Chase-Lev work-stealing deque
getonce
(off by default)
Ensure that continuations of get run at most once (by using extra synchronization)
generic
(off by default)
Use (forthcoming) generic interfaces for Par monads.
A programming model based on monotonically-growing concurrent data structures.
As a starting point, look at the main module, Control.LVish, as well as one of these papers:
FHPC 2013: LVars: lattice-based data structures for deterministic parallelism (http://dl.acm.org/citation.cfm?id=2502326).
POPL 2014: Freeze after writing: quasi-deterministic parallel programming with LVars (http://www.cs.indiana.edu/~lkuper/papers/2013-lvish-draft.pdf).
PLDI 2014: Taming the Parallel Effect Zoo: Extensible Deterministic Parallelism with LVish (http://www.cs.indiana.edu/~rrnewton/papers/effectzoo-draft.pdf).
If the haddocks are not building, here is a mirror: http://www.cs.indiana.edu/~rrnewton/haddock/lvish/
Change Log:
1.0.0.6 - tighten up dependencies; remove unused flags; very minor doc fixes.
1.1.2 - many bugfixes, plus a new logging infrastructure, and verification of finite lattices
1.1.4 - GHC 7.8.3 compatibility.