[PD] puredata evolution
Mathieu Bouchard
matju at artengine.ca
Sun Jun 3 04:35:04 CEST 2007
On Thu, 31 May 2007, Miller Puckette wrote:
> The great majority of DSP objects are side-effect-free and thread-safe.
On average it doesn't matter, because video is the high-bandwidth,
high-crunching task, while audio is becoming (or already is)
low-bandwidth, low-crunching, in comparison to the machine's capacity,
even without using SIMD. There still isn't any pd DSP subsystem that
carries video (there was one in jMax...).
> what's more, I don't think there's any reliable way to determine that an
> object is threadsafe.
A reliable way to determine is to look up a table that lists all the
object classes that are known to be threadsafe. That's at least as
reliable as the humans that certify the threadsafeness.
> So a parallelized version of Pd would, in practice, occasionally crash
> mysteriously.
Only if there are object classes in that list, that shouldn't be there.
> Furthermore, as new DSP objects get written new sources of crashes would
> appear, leaving us in all liklihood in a situation where no version of
> Pd ever emerged that was entirely free of thread-related crashes. Not a
> real pretty sight.
If there are any crashes that you can't debug, you can still reduce the
amount of threadliness.
Almost all race-conditions in pd would result in wrong output instead of
crashes. If you want to address threading issues, consider all
race-conditions, not just crashes.
> Another possibility would be to make Pd open up several address spaces and
> run portions of the patch in then. This was how Max/FTS worked on the ISPW.
With or without shared memory?
> Just to offer my two cents...
USA's currency is falling down nowadays.
_ _ __ ___ _____ ________ _____________ _____________________ ...
| Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada
More information about the Pd-list
mailing list