ChucK performance tests

results.txt
performace_tests.tgz

You are more than welcome to send me comments and/or test files.

About the tests

The idea is to compare the performance of the various UGens and other code sniplets in ChucK. The test create a number (10, 50, 100 or 1000) copies of the code in ChucK and measures the cpu usage on my laptop (Pentium 2.0Ghz, dualcore).

file x10 x50 x100 x1000
00_wait.ck 1.5 1.2 1.4 1.5
01_Gen10_10_partials.ck 3.5 13.5 29.0 96.5
01_Gen10_1_partial.ck 3.2 11.6 22.6 96.7
01_Gen10.ck 3.3 11.0 22.0 95.7
01_Gen10Phasor_10_partials.ck 6.2 36.5 88.0 96.7
01_Gen10Phasor_1_partial.ck 5.5 33.5 88.5 97.5
01_Gen10Phasor.ck 5.5 33.5 87.5 96.5
01_Gen17.ck 3.3 10.7 22.2 96.5
01_Gen5.ck 3.4 10.7 22.5 94.7
01_Gen7.ck 3.4 11.0 22.6 96.0
01_Gen9.ck 3.4 11.0 30.0 94.5
01_Impulse.ck 2.6 7.3 14.7 95.7
01_Noise.ck 6.0 26.2 51.7 95.0
01_Phasor.ck 2.6 8.5 17.3 96.5
01_PulseOsc.ck 2.7 8.5 17.7 96.2
01_SawOsc.ck 3.0 10.2 22.5 94.0
01_SinOsc.ck 5.0 21.5 44.2 95.5
01_SqrOsc.ck 2.8 9.0 18.5 94.2
01_Step.ck 2.6 7.7 15.2 96.2
01_TriOsc.ck 3.2 10.4 22.2 95.5
02_SndBuf.ck 2.6 7.5 15.2 96.7
02_SndBuf_loaded_not_playing.ck 4.6 24.2 53.0 97.2
02_SndBuf_loop.ck 5.3 24.7 53.2 97.0
03_Blit_0harmonics.ck 8.3 36.7 76.0 95.2
03_Blit_100harmonics.ck 8.2 37.0 75.5 95.7
03_Blit_10harmonics.ck 8.4 38.0 74.7 94.5
03_Blit.ck 8.2 37.2 110 96.0
03_BlitSaw_0harmonics.ck 8.2 37.2 76.0 94.7
03_BlitSaw_100harmonics.ck 7.0 37.2 77.0 95.0
03_BlitSaw_10harmonics.ck 8.3 37.7 78.0 95.0
03_BlitSaw.ck 8.2 38.2 77.5 96.2
03_BlitSquare_0harmonics.ck 7.3 40.0 80.2 95.0
03_BlitSquare_100harmonics.ck 8.6 39.7 80.0 95.5
03_BlitSquare_10harmonics.ck 8.7 39.2 80.2 95.5
03_BlitSquare.ck 8.7 39.7 81.0 96.5
04_Gain.ck 2.5 7.6 13.7 95.7
04_Mix2.ck 5.2 24.0 49.0 96.5
04_Pan2.ck 5.2 23.5 49.0 95.5
05_DelayA.ck 3.5 15.3 32.2 95.5
05_Delay.ck 3.2 13.0 29.2 95.7
05_DelayL.ck 3.4 15.2 32.4 95.7
05_Echo.ck 3.6 15.2 40.2 81.6
06_BiQuad.ck 3.0 11.2 22.7 96.2
06_BPF.ck 3.0 9.8 20.2 96.0
06_BRF.ck 3.0 9.7 20.2 96.0
06_Dyno.ck 3.3 11.3 23.2 96.7
06_HPF.ck 3.0 10.0 20.7 96.0
06_LPF.ck 3.0 9.8 20.5 96.7
06_OnePole.ck 3.3 13.2 28.0 96.0
06_OneZero.ck 2.8 13.2 27.7 96.0
06_PoleZero.ck 3.4 12.7 27.7 97.0
06_ResonZ.ck 2.5 10.2 20.0 96.0
06_TwoPole.ck 3.4 13.2 28.0 96.5
06_TwoZero.ck 3.4 13.0 28.2 96.0
07_JCRev.ck 13.0 75.5 95.5 96.5
07_NRev.ck 19.0 96.0 97.2 95.5
07_PRCRev.ck 7.3 45.7 93.7 96.5
08_Chorus.ck 7.3 39.2 81.5 96.7
08_Modulate.ck 6.2 31.5 65.7 97.2
08_PitShift.ck 8.6 66.3 95.2 95.5
09_ADSR.ck 2.7 9.7 19.7 93.7
09_Envelope.ck 2.7 9.2 16.1 95.2
09_SinOscADSR.ck 7.0 32.2 65.7 95.2
09_SinOscEnvelope.ck 6.3 30.5 63.2 94.7
10_wait_10_ms.ck 1.5 1.5 1.5 1.5
10_wait_1_ms.ck 1.5 1.2 1.5 1.5
10_wait_1_sample.ck 1.6 2.0 1.8 1.6
11_cast_float_to_int.ck 2.2 2.2 2.2 2.2
11_divide_integers.ck 2.2 2.3 2.0 2.4
11_modulo_integer.ck 2.2 2.2 2.2 2.4
11_multiply_integers.ck 2.4 2.2 2.2 2.2
90_SinOscLPF.ck 6.6 32.2 67.2 96.2