On Wed, 1 Dec 2010, Hans-Christoph Steiner wrote:
Parallelization is built into Pd, just put down objects, and they will run in parallel.
There's one thread for all those objects together !
There are a few exceptions to that, which have to be explicitly implemented. For instance, [pix_video] uses threads, whereas GridFlow's equivalents don't.
The <m_pd.h> API is not thread-safe, therefore you have to use a global mutex around anything you do with <m_pd.h>... even gensym().
Granted, Pd doesn't use threads to implement the parallelization because it aims to be completely deterministic (basically, that means a patch run exactly the same everytime). Its difficult to write a deterministic program using standard threads.
No-one uses the word «parallel» to mean *that*.
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC