Vesa Karvonen
Vesa Karvonen
The `picos_mux` package contains multiple libraries `picos_mux.fifo`, `picos_mux.multififo`, and `picos_mux.random`.
> why is there an annotation `@inline never` there? > with a Trigger, why does an action takes two parameters instead of one Yes, both of those are for low...
It might be that the issue was related to the cancelation test spawning fibers, which translate to systhreads on OCaml 4. PR #230 changes the tests to not spawn fibers....
@edwintorok mentioned about [the `pthread_cond_wait` bug](https://sourceware.org/bugzilla/show_bug.cgi?id=25847), which might be the cause of the issues.
Thanks for the thorough summary! I would also add `iocp` as a desirable IO backend. Yes, I totally agree that `Unix.select` is highly problematic (slow, limited, ...). My idea with...
> how to make it safe Briefly, the way I see it, the question here is one of semantics. If you look at the documentation of [domain-local-await](https://ocaml-multicore.github.io/domain-local-await/doc/domain-local-await/Domain_local_await/index.html) and [domain-local-timeout](https://ocaml-multicore.github.io/domain-local-timeout/doc/domain-local-timeout/Domain_local_timeout/index.html) you...
> You said you can be much more efficient, right? No. I don't think I [said](https://discuss.ocaml.org/t/ann-kcas-and-kcas-data-0-6-1-stm-and-compositional-lock-free-data-structures/12674/1) quite that. What I did say is that the Stdlib semaphores aren't very fast,...
Picos comes with [replacements for the Stdlib Mutex, Condition, and Semaphore modules](https://github.com/ocaml-multicore/picos/blob/4c63f15c4d7c3acb51a626e949a5ba42180025d9/lib/picos_sync/picos_sync.mli#L18-L167) (amond some other Stdlib replacements). Those implementations are currently optimized for memory use (i.e. minimize memory use) and...
Very low overhead implementations of [`Lock`](https://ocaml-multicore.github.io/picos/doc/picos_std/Picos_std_sync/Lock/index.html), [`Sem`](https://ocaml-multicore.github.io/picos/doc/picos_std/Picos_std_sync/Sem/index.html)aphore, and [`Rwlock`](https://ocaml-multicore.github.io/picos/doc/picos_std/Picos_std_sync/Rwlock/index.html) have now been merged to Picos (but not yet published). The `Lock` is 2-3x faster than `Stdlib.Mutex` for the uncontended case....
Just noting that [documentation in the `mli` file](https://github.com/ocaml-multicore/kcas/blob/6545be485af3e20a2bb777f4fdb096b059235fa9/src/kcas/kcas.mli#L322-L334) that becomes [part of the generated manual](https://ocaml-multicore.github.io/kcas/doc/kcas/Kcas/Xt/index.html) contains some relevant warnings: > Transactions should generally not perform arbitrary side-effects, because when a...