Re: multiJACK patch management: the first glimmerings of success

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/07/2016 01:57 AM, Robin Gareus wrote:
> 
> How would that effectively differ from running at twice the buffersize?
> 
> That approach just moves the load to two CPU cores. If those two cores
> can produce the result in a given time, a single core can do the same
> with twice the buffersize. Identical total latency.
> 
> 2c,
> robin

This is called interleaved scheduling and gives a scheduler the option
to run tasks in parallel by interleaving two (or more) process cycles.
This differs  from using a double buffer size because the scheduler has
more opportunity to fill "holes" in the schedule, that are introduces by
client dependencies in the graph.

Doing this by hand (as described by bridiging multiple jack instances)
moves the responsibility of interleaving the two jack schedules to the
kernel scheduler and may theoretically bring better resource usage in
some special cases, but also has some pitfalls.
The right way to to this, would be to implement this in the sound
server, but if this makes sense for the use cases of jack2 is a
different question. Also it increases the risk of getting xruns from
clients with non constant runtime in their process callback.

Best regards
Markus
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@xxxxxxxxxxxxxxxxxxxx
http://lists.linuxaudio.org/listinfo/linux-audio-user



[Index of Archives]     [Linux Sound]     [ALSA Users]     [Pulse Audio]     [ALSA Devel]     [Sox Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux