<html><body><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; color: #000000"><div><br></div><div><span id="zwchr" data-marker="__DIVIDER__">----- On Jun 6, 2016, at 2:48 PM, Mark E. Dawson, Jr. <medawsonjr@yahoo.com> wrote:<br></span></div><div data-marker="__QUOTED_TEXT__"><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div id="yui_3_16_0_ym19_1_1465238402299_6084">All,</div><div id="yui_3_16_0_ym19_1_1465238402299_6084"><br></div><div id="yui_3_16_0_ym19_1_1465238402299_6084">Is there a data structure offered by Userspace RCU that provides a bounded single producer multiple consumer queue? Or are we better off just using the linked list URCU data structure despite the cpu cache implications?</div></div></blockquote><div><br></div><div><div>Hi,</div><div><br></div><div>What we have in URCU is an unbounded SPMC queue (wfcqueue.h).</div><div>You could theoretically use it with a counter to make it bounded, but</div><div>it might not be as efficient as a bounded SPMC queue, since we use</div><div>a linked list rather than a circular buffer. It would be interesting to</div><div>compare the performance of the two approaches.</div><div><br data-mce-bogus="1"></div><div>Note that wfcqueue is wait-free on the enqueue, blocking on the<br data-mce-bogus="1"></div><div>dequeue. It is used internally by URCU to implement the call_rcu<br data-mce-bogus="1"></div><div>scheme.<br data-mce-bogus="1"></div><div><br></div><div>Thanks,</div><div><br></div><div>Mathieu</div><div><br></div></div><div><br data-mce-bogus="1"></div><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><br>_______________________________________________<br>lttng-dev mailing list<br>lttng-dev@lists.lttng.org<br>https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev<br></blockquote></div><div><br></div><div data-marker="__SIG_POST__">-- <br></div><div>Mathieu Desnoyers<br>EfficiOS Inc.<br>http://www.efficios.com</div></div></body></html>