package domainslib
Parallel Structures over Domains for Multicore OCaml
Install
Dune Dependency
Authors
Maintainers
Sources
0.4.2.tar.gz
sha256=3b443c1c09c05db8549a1f528d1ad6ea76f52ef33f688696dd5fe4d5cfa198a6
md5=a079b8b5b676e8d38d713f02b25b14db
README.md.html
domainslib - Parallel Programming over Multicore OCaml
domainslib
provides control and data structure for parallel programming using domains.
The supported data structures are:
Channels may be shared between multiple senders and receivers.
Channels ensure FIFO message order.
Channels come in two flavours -- bounded (fixed-buffer size (>= 0) beyond which the send blocks) and unbounded.
Work-stealing task pool with async/await parallelism and parallel for loop.
See examples for usage.
Installation
The library can be installed using multicore-opam
, an OPAM repository of multicore specific packages.
$ opam switch create 4.12.0+domains+effects
$ opam install domainslib
Development
If you are interested in hacking on the implementation, then opam pin
this repository:
First install the multicore compiler and dune:
$ opam switch create 4.12.0+domains+effects
$ opam install dune
Then, pin a clone of this repo:
$ git clone https://github.com/ocaml-multicore/domainslib
$ cd domainslib
$ opam pin add domainslib file://`pwd`
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>