nim-works / loony

A high throughput MPMC lock-free queue based on a paper by Giersch, Nolte et al implemented in pure Nim.
https://nim-works.github.io/loony/
MIT License
64 stars 4 forks source link

Related stuff worth looking at before implementation :) #1

Closed dumblob closed 2 years ago

dumblob commented 2 years ago

a) Nim's Weave (which offers different queues, work-stealing scheduler with some twists, but most importantly excellent performance - I don't know of any other as generic solution which scales nearly linearly and uses so high percentage of computing power per CPU)

b) https://github.com/ConorWilliams/Forkpool

shayanhabibi commented 2 years ago

Thanks for them; I had looked at Weave before but AFAIK it mostly implemented MPSC queues to ensure wait free consumption.

There's nothing wrong with that implementation, but a MPMC is far easier to reason about and implement in any project however not necessarily sharing the performance of multiple MPSC.

Plus I want this to specifically work with CPS 🤣