|
I've done some experimentation with the [poly~] external running in
multithreaded mode (using
the "parallel" and "threadcount" messages) on a Core 2 Duo iMac.
At first, I thought it wasn't working because I was relying on Apple's
Activity Monitor to see a performance benefit. Whenever I increased the
threadcount to 2, the "% CPU" column would increase and I could not detect
any changes in the CPU histogram. But Max was telling me that CPU usage was
nearly cut in half.
I decided to instantiate [poly~] with just enough voices to get audio
breakups. Then I increased threadcount to 2 and got no breakups. After 2,
I could see the thread overhead start to build up as one would expect. I
then tried to see how many voices I could get with different threadcounts.
I got 6 voices on 1 thread without breakups, and 10 voices on 2 threads
without breakups. So, I'm convinced that [poly~] multithreading is working.
Although [poly~] makes copies of a single patch, you can target individual
voices when sending values and messages. So in theory (haven't tried it
yet) you could run different CSD files (using [csound~]) within one [poly~].
Sounds like a fun weekend project :)
Davis
--
View this message in context: http://www.nabble.com/Multiprocessing-in-Max-MSP-5.0-tp18121733p18123340.html
Sent from the Csound - Dev mailing list archive at Nabble.com.
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net |