Csound Csound-dev Csound-tekno Search About

[Cs-dev] Csound5 real time audio benchmarks

Date2005-01-25 07:33
FromIain Duncan
Subject[Cs-dev] Csound5 real time audio benchmarks
Ok, here are some benchmarks of Csound 5 under heavy loads, compared 
against Istvan's 4.23.4.2, which I have found to be best real time audio 
performer so far ( significantly better than CsoundAV on windows ). I 
used 4.23.4.2 and not Istvan's 4.24 because 4.24 never worked with our 
sequencer project. I think -Lstdin and event were the culprits but I'm 
not sure. Istvan, if you are resuming work on that build I will be happy 
to test on it again, or run these tests on 4.24 as they don't actually 
require -Lstdin.

Bad news, csound 5 real time audio output under heavy loads is
unfortunately unusable right now.

The comparisons are all on gentoo linux, 2.6.8 with a Delta 66. The
ensemble is my gig ensemble. On my AMD64 3000+ this ensemble will max
out the machine ( 95-100% cpu ) if ksmps = 50, and run ok if ksmps =
100. Sr=44100. The ensemble uses a lot of samplers, complicated
monosynths with a ton of real time table writing, and lots of fx units
especially feedback delays and filtering. The ensemble is playing a
standard ( though long ) score.

Normally midi input is used to mute and unmute instruments, change fx 
settings, and edit synth paramaters, but these tests do not use any 
midi, I commented out the midi input modules, and turned off midi input 
to test plain real time audio output under heavy load first. No fltk 
opcodes are used anywhere in the code, and no messages are printed to 
standard output. Please ask for anything I forgot to mention!

Of special note is how significant Istvan's --expression-opt work is. A 
15% drop in cpu use and much improved stability. The only catch is that 
if you accidentally run an ensemble that pins over 100% cpu us, you'll 
be hitting the power button. ; )


Benchmarks

Csound 4.23.4.2
- -m0 -d -b512 -B512 --sched --expression-opt
- cpu use 55-57%
- no clicks or hiccups no matter what I do, even switching windows, 
watching top, etc

Csound 4.23.4.2
- -m0 -d -b512 -B512 --sched   ( no --expresion-opt )
- cpu use 72%
- no clicks or hiccups no matter what I do, switching windows, watching 
top, etc

Csound 4.23.4.2
- -m0 -d -b512 -B512  --expression-opt  (  no --sched )
- cpu use 55-57%
- clicks on window switching, viewing top, sometimes on xwindowsfx
- if left open on csound terminal and mouse is not moved, does not click

Csound 4.23.4.2
- -m0 -d -b512 -B512  ( no --sched or --expression-opt )
- cpu use 72%
- clicks on window switching, viewing top, xwindows fx
- if left open on csound terminal and mouse is not moved, does not click

Csound 5
- -m0 -d -b512 -B512 --sched ( --expression-opt does not exist for 
csound 5 )
- cpu use 72-3%
- clicks on mouse movements
- does not really click if I'm doing nothing, but hiccups badly every 
5-8 bars, rendering unusable for gigs
- very bad clicks and drop outs on any window switching or xwindows fx

Csound5, as above with bigger buffers
-b1024 -B1024
- performance essentially the same as with -b512 -B512,
- only difference is that the hiccups happen less frequently

Csound5, as above very big buffer
-b2048 -B2048
- same as above, hiccups






-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2005-01-28 13:33
FromIstvan Varga
SubjectRe: [Cs-dev] Csound5 real time audio benchmarks
Iain Duncan wrote:

> Of special note is how significant Istvan's --expression-opt work is. A
> 15% drop in cpu use and much improved stability.

This option is now also available in Csound5, although some testing is needed.
Even with --expression-opt, though, Csound5 is still not as well suited for
production use as e.g. 4.23.4.2, as there are still major bugs, MIDI is not very
usable (massign/pgmassign are broken etc.), and until plugin audio modules are
implemented, you are limited to using PortAudio, which can never be as good as
native ALSA. I will try to fix these problems, though, so eventually Csound5
will have performance comparable to the 'unofficial' version, and better than
CsoundAV.



-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net