ringbuf icon indicating copy to clipboard operation
ringbuf copied to clipboard

Single-producer/multiple consumer ring buffer

Open yangsuli-netapp opened this issue 3 years ago • 2 comments

Hi,

Thank you for providing this library; we found it highly performant and quite useful.

However, we need to use it in a different scenario, with only a single producer and multiple consumers. Upon reading the code, I think a very similar implementation would work, where instead of maintaining per-producer seen/ready-offset, we maintain a separate offset per consumer. During acquiring, the (single) producer checks the offset of each producer, and use the lowest one as the available acquirable range.

Is my understanding correct? If so, do you have plans on implementing such a SPMC ring buffer?

Thanks!

Suli

yangsuli-netapp avatar Aug 01 '22 09:08 yangsuli-netapp

Hi @yangsuli-netapp,

What's your budget? :) I can write one taylored for your requirements. I do wonder, though, what problem are you solving with the SPMC ring buffer.

-- Mindaugas

rmind avatar Aug 01 '22 12:08 rmind

Honestly, I don't have a budget on this :/ --- though I can certainly appreciate the effort required.

So I was thinking if I am in the right direction and if this is not in your implementation plan, then maybe I could take the task and implement it...

Suli

On Mon, Aug 1, 2022 at 8:01 PM Mindaugas Rasiukevicius < @.***> wrote:

Hi @yangsuli-netapp https://github.com/yangsuli-netapp,

What's your budget? :) I can write one taylored for your requirements. I do wonder, though, what problem are you solving with the SPMC ring buffer.

-- Mindaugas

— Reply to this email directly, view it on GitHub https://github.com/rmind/ringbuf/issues/11#issuecomment-1201107980, or unsubscribe https://github.com/notifications/unsubscribe-auth/AY5C7EYCG2FER7AZ2DCSJE3VW64BBANCNFSM55GZE23A . You are receiving this because you were mentioned.Message ID: @.***>

yangsuli-netapp avatar Aug 01 '22 22:08 yangsuli-netapp