Re: Interview video with Barry Vercoe on MIT
Date | 2015-05-27 15:21 |
From | jpff |
Subject | Re: Interview video with Barry Vercoe on MIT |
>>>>> "Michael" == Michael Rhoades |
Date | 2015-05-27 15:59 |
From | Michael Gogins |
Subject | Re: Interview video with Barry Vercoe on MIT |
Attachments | None None |
John is right. Our version of Csound has in the last few years been subjected to a fair amount of static code analysis and run-time performance profiling. So I think it should be reasonably efficient as it stands. Understand, almost all of the code that Csound executes during an actual performance is opcode performance routines. After compilation, Csound runs in a pretty tight loop. Once per kperiod, checks for inputs, then iterates over all the active instrument instances. For each active instrument, Csound simply iterates over all of that instrument instance's opcode instances and calls each one's performance routine. Most of the other code in Csound exists just to set up this tight loop. To further optimize Csound, what would make sense is to develop test csds that would exercise the most commonly used opcodes. We could then profile each csd and see if there is anything in any of the opcode performance routines that can be significantly speeded up. The initialization routines are called much less frequently, but could cause blips in performance, so some of these could be profiled also. Also, in multi-threaded performance, the lists of instruments and opcode instances are divided up into sub-lists that can be executed concurrently, but this does not change the basic picture painted above. The code for dividing up the sub-lists has apparently also been optimized recently. Regards, Mike ----------------------------------------------------- Michael GoginsIrreducible Productions http://michaelgogins.tumblr.com Michael dot Gogins at gmail dot com On Wed, May 27, 2015 at 10:21 AM, jpff <jpff@codemist.co.uk> wrote: >>>>> "Michael" == Michael Rhoades <mrhoades@perceptionfactory.com> writes: |
Date | 2015-05-27 16:08 |
From | Rory Walsh |
Subject | Re: Interview video with Barry Vercoe on MIT |
Attachments | None None |
I have to say that I am also a fan of this idea. But it does sound like a lot of boring work! On 27 May 2015 at 15:21, jpff <jpff@codemist.co.uk> wrote: >>>>> "Michael" == Michael Rhoades <mrhoades@perceptionfactory.com> writes: |
Date | 2015-05-27 16:10 |
From | Justin Smith |
Subject | Re: Interview video with Barry Vercoe on MIT |
Attachments | None None |
Regarding the usage of multiple cores, which Csound versions does this behavior apply to? When I get my new 8-core Android device, will Csound6.apk be able to use all the cores? What about the Csound version that runs in a browser? On Wed, May 27, 2015 at 7:59 AM, Michael Gogins <michael.gogins@gmail.com> wrote:
|
Date | 2015-05-27 16:23 |
From | Michael Gogins |
Subject | Re: Interview video with Barry Vercoe on MIT |
Attachments | None None |
I think Csound for Android should be able to run multiple threads. I do not think the Emscripten build of Csound will ever be able to do so without substantial additional work because the JavaScript context in a Web browser is inherently single-threaded, and concurrency appears to be available at this time only through "Web Workers" which communicate by passing messages (which can be serialized value objects). About PNaCl I am not sure. Regards, Mike ----------------------------------------------------- Michael GoginsIrreducible Productions http://michaelgogins.tumblr.com Michael dot Gogins at gmail dot com On Wed, May 27, 2015 at 11:10 AM, Justin Smith <noisesmith@gmail.com> wrote:
|
Date | 2015-05-27 16:34 |
From | Victor Lazzarini |
Subject | Re: Interview video with Barry Vercoe on MIT |
yes, both should be able to run it (the code is compiled for these two platforms). The only dependency is pthreads which is available in both platforms. ======================== Dr Victor Lazzarini Dean of Arts, Celtic Studies and Philosophy, Maynooth University, Maynooth, Co Kildare, Ireland Tel: 00 353 7086936 Fax: 00 353 1 7086952 > On 27 May 2015, at 16:23, Michael Gogins |
Date | 2015-05-27 16:37 |
From | Steven Yi |
Subject | Re: Interview video with Barry Vercoe on MIT |
Attachments | None None |
Just to clarify Victor's statement, multicore applies to Android and PNaCl, but not Emscripten. Also, it applies to iOS. On Wed, May 27, 2015 at 11:34 AM, Victor Lazzarini <Victor.Lazzarini@nuim.ie> wrote: yes, both should be able to run it (the code is compiled for these two platforms). The only dependency is pthreads |
Date | 2015-05-27 16:52 |
From | Rory Walsh |
Subject | Re: Interview video with Barry Vercoe on MIT |
Attachments | None None |
I quite like the Xcode profiler. I regularly run Csound instruments through it. I had an issue recently with an instrument Gleb sent me. We couldn't figure out what was slowing it down. So we ran it through the profiler and noticed a huge bottleneck around an array method. I looked through the code again and couldn't see anything out of the ordinary with the array methods. Then we realised that the UDO that was calling the array methods was running at ksmps=1, and what's more, there were lot of instances of the UDO running. I probably should have caught that before profiling it, but there you go. On 27 May 2015 at 16:37, Steven Yi <stevenyi@gmail.com> wrote:
|
Date | 2015-05-28 00:21 |
From | thorin kerr |
Subject | Re: Interview video with Barry Vercoe on MIT |
Attachments | None None |
When I did a bit of OLPC work, and was having some trouble with Csound on ARM, Barry pointed me to CsoundXO CsoundXO offerred an orchestra statement which made all audio-rate signal processing use fixed-point integers. Probably of no consequence on modern CPU's now, but at the time on an XO I seem to remember it mattered. Thorin On Thu, May 28, 2015 at 12:21 AM, jpff <jpff@codemist.co.uk> wrote: >>>>> "Michael" == Michael Rhoades <mrhoades@perceptionfactory.com> writes: |
Date | 2015-05-28 00:27 |
From | Victor Lazzarini |
Subject | Re: Interview video with Barry Vercoe on MIT |
Attachments | None None |
For the XO, there was little difference in performance. Csound 5 won in all other aspects, and that was what shipped. Victor Lazzarini Dean of Arts, Celtic Studies, and Philosophy Maynooth University Ireland
|