[linux-audio-user] Re: [Jackit-devel] 2.6.10

Rui Nuno Capela rncbc at rncbc.org
Thu Dec 30 06:19:14 EST 2004


Hi,

As posted before on LKML, here goes my contained jackd test-suite (see
attached tarball, jackd_test3.2.tar.gz).

The provided shell script, can be issued from the command line as:

  ./jack_test3_run.sh [secs] [clients] [ports] [period]

where:

  secs    - number of seconds to run jackd workload (default = 300)
  clients - number of test-clients to run (default = 20)
  ports   - number of interface ports per client (default = 4)
  period  - number of frames per buffer (default = 64)

Each test client (jack_test3_client) registers the same number of input and
output ports (default is 4ins x 4outs), where each output is the audio mix
of all inputs.

The jack_test_run.sh script sets this jackd maximum port limit
number as it sees fit, so any number of clients is allowed, provided
there's enough CPU and/or RAM ;)

Each test run produces a kernel-timestamped log filename with the complete
captured stdout/err. Consolidated results can be produced by feeding
several of those logfiles into the jack_test3_consolidated.awk script,
just like this:

  cat *.log | awk -f jack_test3_consolidated.awk

Additionally, if gnuplot is available, a graphical log chart is written
as a PNG output file, for your eyes pleasure. You can (re)generate any chart
for any log filename (and only one), by issuing the following script
command line:

  ./jack_test3_plot.sh <logfilename>


Now, let's get to the point. With the default workload (20 clients * 4 * 4
ports) I've ran it against a Con Kolivas' 2.6.10-cko1 patched kernel and
the real jewel as is latest 2.6.10-rc3-mm1-RT-V0.7.33-04, which is Ingo
Molnar's full PREEMPT_RT patched kernel. The tests were conducted on my
P4 at 2.5G laptop, against the on-board alsa driver (snd-ali5451).

The jackd command line is therefore:

  jackd -v -R -P60 -dalsa -dhw:0 -r44100 -p64 -n2 -S -P

The results speak for themselves :)


                                  2.6.10-cko1  RT-V0.7.33-04
                                  ------------- -------------
  Timeout Rate  . . . . . . . . :    (    0.0)    (    0.0)   /hour
  XRUN Rate . . . . . . . . . . :       216.8          2.2    /hour
  Delay Rate (>spare time)  . . :       395.2          0.0    /hour
  Delay Rate (>1000 usecs)  . . :       375.8          0.0    /hour
  Delay Maximum . . . . . . . . :      4320          308      usecs
  Cycle Maximum . . . . . . . . :       845         1051      usecs
  Average DSP Load. . . . . . . :        44.0         50.2    %
  Average CPU System Load . . . :        14.4         31.7    %
  Average CPU User Load . . . . :        19.8         21.4    %
  Average CPU Nice Load . . . . :         0.0          0.0    %
  Average CPU I/O Wait Load . . :         0.1          0.1    %
  Average CPU IRQ Load  . . . . :         0.0          0.0    %
  Average CPU Soft-IRQ Load . . :         0.0          0.0    %
  Average Interrupt Rate  . . . :      1691.7       1692.6    /sec
  Average Context-Switch Rate . :     13368.8      18213.9    /sec


So, bottom-line goes like this: even though vanilla is getting a little
more tasty, Ingo's RT patch performance beats it up by orders of
magnitune. Nuff said. ;)
-- 
rncbc aka Rui Nuno Capela
rncbc at rncbc.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: jack_test3.2.tar.gz
Type: application/x-gzip-compressed
Size: 11383 bytes
Desc: not available
Url : http://lists.linuxaudio.org/pipermail/linux-audio-user/attachments/20041230/b1a25fa9/attachment.bin 


More information about the Linux-audio-user mailing list