[PD] removing objects causes recomposing of the dsp graph

Roman Haefeli reduzierer at yahoo.de
Thu Apr 8 23:33:21 CEST 2010

Hi all

I found that doing (officially unsupported) dynamic removal of objects
causes a redraw of the dsp graph. Especially in big patches this can
lead to audio drop outs. There seems to be a (linear?) relationship
between the number of objects(connections?) in a patch and the time it
takes for the dsp graph to be redrawn. At least I think the drop outs
are related to the dsp graph redrawing because of the followig

* [7(-[until]-[delete(-[s canvasname]
  requires 700ms (on my computer on the patch I'm working)

* [delete(-[s canvasname]
  requires 100ms

* [dsp 0(, [7(-[until]-[delete(-[s canvasname], [dsp 1(
  requires also only 100ms

It seems, that no time is used as long dsp is turned off, and only on
turning it on again, the dsp graph is redrawn (cpu time is consumed).

Interestingly it requires very little time to create message-only
objects, which makes me think that after dynamically creating an object
the dsp graph is not redrawn. Why does deleting an object triggers it,
even it was not triggered on creation time of that very same object?

Is there a way to 'manually' control the redrawing of the dsp graph  and
also to suppress it, when not necessary?


More information about the Pd-list mailing list