KC Sivaramakrishnan edited this page Apr 6, 2018 · 16 revisions

Welcome to the Multicore OCaml development wiki! The goal of Multicore OCaml is to add shared memory multicore parallelism to OCaml. The sidebar has links to design/implementation notes. Below is a collection of resources elsewhere on the web relating to Multicore OCaml development.

Getting Started

There is an OPAM remote in ocamllabs/multicore-opam that provides new compiler switches with the multicore-enabled functionality. See the README for instructions.




  • Aeio: Asynchronous effect-based IO.
  • effects-examples: A collection of algebraic effects and handlers examples.
  • Reagents: A composable lock-free synchronization library for Multicore OCaml.
  • OCaml-effects: OCaml with support for (unchecked) algebraic effects and handlers. Multicore OCaml story is composed of two parts: concurrency (through algebraic effects and handlers) and parallelism (through domains and a new multicore GC). OCaml-effects is vanilla OCaml with algebraic effects but without parallelism support.
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.