|
|
|
@@ -11,24 +11,26 @@ activation system has been changed for a data flow model and lock-free |
|
|
|
programming techniques for graph access have been used to have a more dynamic |
|
|
|
and robust system. |
|
|
|
|
|
|
|
- jackdmp uses a new client activation model, that allows simultaneous client |
|
|
|
- uses a new client activation model, that allows simultaneous client |
|
|
|
execution (on a SMP machine) when parallel clients exist in the graph (client |
|
|
|
that have the same inputs). This activation model allows to better use |
|
|
|
available CPU on a smp machine, but also works on mono-processor machine. |
|
|
|
|
|
|
|
- jackdmp uses a lock-free way to access (read/write) the client graph, thus |
|
|
|
- uses a lock-free way to access (read/write) the client graph, thus |
|
|
|
allowing connections/disconnection to be done without interrupting the audio |
|
|
|
stream. The result is that connections/disconnections are glitch-free. |
|
|
|
|
|
|
|
- jackdmp can work in two different modes at the server level: |
|
|
|
- *synchronous activation*: in a given cycle, the server waits for all |
|
|
|
clients to be finished (similar to normal jackd) |
|
|
|
- *asynchronous activation*: in a given cycle, the server does not wait for |
|
|
|
all clients to be finished and use output buffer computed the previous |
|
|
|
cycle. |
|
|
|
The audible result of this mode is that if a client is not activated |
|
|
|
during one cycle, other clients may still run and the resulting audio |
|
|
|
stream will still be produced (even if its partial in some way). This |
|
|
|
mode usually result in fewer (less audible) audio glitches in a loaded |
|
|
|
system. |
|
|
|
- can work in two different modes at the server level: |
|
|
|
|
|
|
|
- *synchronous activation*: in a given cycle, the server waits for all |
|
|
|
clients to be finished (similar to normal jackd) |
|
|
|
|
|
|
|
- *asynchronous activation*: in a given cycle, the server does not wait for |
|
|
|
all clients to be finished and use output buffer computed the previous |
|
|
|
cycle. |
|
|
|
The audible result of this mode is that if a client is not activated |
|
|
|
during one cycle, other clients may still run and the resulting audio |
|
|
|
stream will still be produced (even if its partial in some way). This |
|
|
|
mode usually result in fewer (less audible) audio glitches in a loaded |
|
|
|
system. |
|
|
|
|