On Wed, Sep 24, 2014 at 7:21 AM, William Light <[email protected]> wrote:

> Hey everybody,
>
> I've got this audio app I'm writing which uses message passing to
> communicate between threads (similar to the actor model). A message
> channel consists of a ring-buffer for the actual message storage, and
> then an eventfd so that a thread can block on its channel (or,
> importantly, several).
>
> At the moment, when the audio thread (the JACK callback) needs to send a
> message over a channel to another thread, it follows the common codepath
> of appending the message to the channel's ring-buffer and then
> write()ing to the eventfd. I suspect this is not real-time safe, but is
> it something I should lose sleep over?
>

we're still missing measurements on the performance of semaphores, fifo's
and eventfd's when used for this purpose on modern linux. JACK itself uses
FIFOs (pipes) on Linux because 10+ years ago they were the fastest and most
reliable. nobody knows for sure right whether that is still true.
_______________________________________________
Linux-audio-dev mailing list
[email protected]
http://lists.linuxaudio.org/listinfo/linux-audio-dev

Reply via email to