[PD] SMP Questions

Tim Blechmann tim at klingt.org
Wed Aug 22 11:07:57 CEST 2007

> One of the limitations with the Pd DSP chain *is* it's style of
> modularity.  The stream is broken down into indivisible blocks.  The
> tree is parallel at the top, but as you go down the tree, it becomes
> more and more serial.  There would be a bottleneck, where the parallel
> processes aren't used.
> In order to get a generic speedup, those "indivisible blocks" have to
> be divisible.  And this is not always possible--

afaict, it is just a problem of scheduling ... scheduling a serialized
(topologically sorted) dsp graph is very easy and very efficient ...
just iterate over an array (nova) or a memory region (pd) ... it is
actually scheduled in advance ... 

a parallel dsp graph scheduler would introduce some dispatching code
between the nodes ... probably we need to maintain ready/waiting queues
that we have to access in order to make our scheduling decisions ...
which is way more expensive than just going to the next node in a dsp
chain ...

so for small "parallel" graphs like:
osc~  line~
|   / 
|  /

the parallel execution of osc~ and line~ is probably more expensive than
running osc~->line~->*~->dac~

so i don't think, it is a problem of splitting up indivisible blocks,
but rather to combine these indivisible blocks to reasonably large
serial chunks ...

> You'd have to start almost from scratch to design an
> ideal parallelized Pd.

yes, probably :)


tim at klingt.org    ICQ: 96771783

Nothing exists until or unless it is observed. An artist is making
something exist by observing it. And his hope for other people is that
they will also make it exist by observing it. I call it 'creative
observation.' Creative viewing.
  William S. Burroughs
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20070822/c12d67f2/attachment.pgp>

More information about the Pd-list mailing list