On Tue, 2011-10-04 at 00:56 +0200, katja wrote: > On Mon, Oct 3, 2011 at 7:08 PM, katja <[email protected]> wrote: > > On Mon, Oct 3, 2011 at 6:21 PM, IOhannes m zmoelnig <[email protected]> wrote: > > > >> apropos performance: > >> on my i5 650 @ 3.2GHz, running debian > >> and trying to osc-delay-perfotest.pd (with only 400 osc-delay > >> abstractions, as 500 would max out the CPU in "new double" mode) i get: > >> original : 28% > >> debian : 31% > >> new single: 64% > >> new double: 86% > > > > Did you build new single / new double without any optimization? > > Makefile.am/in for Pd-0.43.1-test4 do not specify optimization. I > > compared using -O2 for all builds, like it is set for Pd-0.43-0. > > > > Katja > > > > Update: > > The rewritten code is more sensitive to optimization than the > original. On coreduo 1.83 GHz with Debian I could only run 200 > osc-delay abstractions in osc-delay-perfotest.pd under worst > conditions. Compare these values from command top: > > original: 69% with -O0, 47% with -O2 (no SSE) > new-single: 83% with -O0, 48% with -O2 (no SSE) > new-double: 97% with -O0, 59% with -O2 (no SSE) > > On MacBook core2duo 2GHz where I wrote and optimized most, 500 > osc-delay abstractions can easily run in osc-delay-perfotest.pd, with > these values from top: > > original: 60% with -O3 and SSE > new-single: 50% with -O3 and SSE > new-double: 54% with -O3 and SSE > > I knew on beforehand that the code would get tuned (performance-wise) > to hardware, instruction set, OS, compiler, compiler options etc. used > for development, but it never crossed my mind to check performance > with optimization level -O0.
I think this is the right approach to coding this stuff. Both the compilers and the CPUs can do a lot more since that code was originally written. Debian doesn't compile things at -O0, but it does not allow CPU-specific optimizations (i.e. SSE). I'm sure -O2 is ok for Debian. aI hope that Debian allows SSE on the amd64 arch, since all x86_64 CPUs support SSE. SSE has been in Intel i386 chips since 1999 and I think basically all i386 chips since 2004. And we have our first Pd-double build! http://autobuild.puredata.info/auto-build/2011-10-03/Pd-0.43.1-double-20111003-macosx106-x86_64.dmg rsync -av --delete rsync://128.238.56.50/distros/pd-double/ pd-double/ .hc _______________________________________________ Pd-dev mailing list [email protected] http://lists.puredata.info/listinfo/pd-dev
