[LAD] Multiple JACK servers connected in one host?

Paul Davis paul at linuxaudiosystems.com
Fri Mar 11 16:17:23 UTC 2016


On Fri, Mar 11, 2016 at 11:00 AM, Jonathan Brickman <jeb at ponderworthy.com>
wrote:

> On 3/11/2016 9:57 AM, Paul Davis wrote:
>
>
> On Fri, Mar 11, 2016 at 10:48 AM, Jonathan Brickman <
> <jeb at ponderworthy.com>jeb at ponderworthy.com> wrote:
>
>> Indeed -- except that cars in Manhattan are restricted to using wheels
>> :-)  I have rocket engines which don't give off exhaust at all, lots and
>> lots of fuel, no skyscrapers in the way, and no one else in the air; I am
>> going to either learn or help build a way to use those engines :-)
>>
>
> although it isn't proven yet .. i think that your problem may come from
> the fact that you want to have 19 different engines, and you keep flicking
> switches to go from one to the other.
>
> Nope, I don't want to switch engines.  Everything runs at once, and runs
> very well by the way.  I just want to take more advantage of what I have,
> by running some things asynchronously, exactly the way some are already
> doing using multiple motherboards.
>

the "engines" i'm referring to are your many multiple clients (19 or so).

i think you're still confused by terminology here, in a way that doesn't
advance your situation. Nothing in a JACK system runs "asynchronously".
Everything is "synchronous", which means that within a given process cycle,
all clients will be processing audio samples taken from, or to be written
to, the same locations in the hardware buffer of the audio interface in
use. They work on the same "time slice". Changing this would break the
fundamental assumptions and design of JACK (all versions).

what you are talking about is parallel vs. serialized execution of clients
(which some might term "sequential execution"). parallel execution means
that clients can be distributed across cores or cpus or whatever;
serialized execution means that only 1 client can execute at a time, so
unless that client has its own internal processor-level parallelism (e.g.
ardour), it will make no difference how many cores/cpus/mobos you have -
only 1 of them will be used at a time.

your workflow has some parallelizable elements and some elements that must
be run serially/sequentially. it is an odd design, significantly outside
the intended scope of what JACK was intended to be used for. some people
think it can be made to work for a flow like this.


>
> i'm not even sure that we've confirmed that you are using jack2 yet. are
> you?
>
> Yep.  I try JACK1 two or three times a year, briefly, but JACK1 can't come
> close to what JACK2 is giving me now.
>

as long as you have parallelizable data flows, that's true. JACK1 doesn't
pay any attention to parallelization: all clients are run sequentially.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxaudio.org/pipermail/linux-audio-dev/attachments/20160311/971d22d3/attachment.html>


More information about the Linux-audio-dev mailing list