Vesa Karvonen

Results 126 comments of Vesa Karvonen

## On poor performance of this queue on Opteron (i.e. fermat) On the "fermat" machine we use for benchmarking, the Michael-Scott queue seems to perform better than this queue. The...

Out of curiosity I tried to test the theory of whether one could improve the performance of this queue on Opteron by writing to the cache line (non-atomically) before reading...

Note that the `Saturn_lockfree Queue` refers to the Michael-Scott based queue. The code in this branch adds a benchmark for `Saturn_lockfree Two_stack_queue`. If you run `dune exec --release -- ./bench/main.exe...

A quick note: I currently strongly feel this sort of thing should be put into a minimal library of its own. IOW, I would not put it into `lockfree` (nor...

> perhaps the rendezvous polymorphism is not required and could be added on the side on a case-by-case basis? It is difficult to say, but generally speaking, there are likely...

> > I currently strongly feel this sort of thing should be put into a minimal library of its own. > > Yeah I don't have an opinion on this.....

Also mentioning here that the [domain-local-await](https://github.com/ocaml-multicore/domain-local-await) or DLA library is now available as an [opam package](https://opam.ocaml.org/packages/domain-local-await/) and provides a blocking mechanism inspired by the "rendezvous" primitive described in this PR....

Overall this looks good! I added some minor comments on how to potentially improve.

I developed a draft implementation of lock-free bounded queue, see #83. It is based on the Michael-Scott queue and keeps track of the length of the queue and a cache...

Is there a benchmark comparing against the Michael-Scott queue? It would be interesting to see the relative performance.