Multicore OCaml: November 2021 with results of code review

We currently have ocaml 4.12.0+domains. It is able to compile a significant chunk of the current Ocaml opam ecosystem already. I am able to compile package with a lot of dependencies like the dream web framework. Things seem to work well already on the multicore compiler.

But from the Nov 2021 update above, it seems a lot of of work is still remaining.

Are things working now because the current opam ecosystem is basically running on only a single multicore domain? Is the bulk of the work remaining to make sure that things like stdlib and other stuff not handled by the multicore team so far (like dynlink) can work properly when they run in multiple domains?

Now eio is able to run in multiple domains as I understand it. How do I know which of the underlying stdlib methods will “break” if I use them in Eio? Does the stdlib that comes with the 4.12+multicore branch already have a somewhat “patched” stdlib that can work on multiple domains?

Essentially a short list of tips on what is OK and what should be avoided when working with Eio+ OCaml 4.12+domains will be appreciated.

Finally, I’ve been following the new ocamlnat/ocaml-jit project with some interest – I’m wondering if it would be a useful idea to (1) backport the patches mentioned here to 4.12+domains (2) Then try get ocamljit working there (and since dynlink is involved, only on a single domain).