Hi!
(hope the subject won't redirect this mail straight in your spam!)
I'm using 2.6.39 + thread irqs for several days/weeks, with FFADO
(Saffire PRO 40), on a moroless Debian system.
I'm really happy with it, it works fine, my DSP load is way lower than
before, and I don't have that Big Kernel Lock problem anymore, which is
cool.
But, when having an Xrun (which occurs very rarely, like once every 6 or
7 hours average), it last really long (I would say something like 2-5
seconds), and is thus highly hearable (sounds really stop, no unsync
clics, but a total silence).
I wondered whether someone had an explanation about this, as I can't
find a reason for that.
See you.
Aurélien
On Mon, Jun 13, 2011 at 05:38:11PM -0700, Fernando Lopez-Lezcano wrote :
Hi all,
I just built a threaded-irqs enabled 2.6.39.1 kernel and used
cyclictest to try to get an initial feeling of how good it might be.
Cyclictest tests scheduling delays of the kernel it is running
on[*]. These tests were run on a Fedora 13 T510 Lenovo laptop, with
the ugly binary Nvidia driver (caveat emptor).
In the menu:
2.6.39.1 with threaded irqs and PREEMPT active
2.6.33.13-rt31
2.6.34.8-rt31 (a forward port of rt31 to 2.6.34)
plain Fedora kernel (2.6.34.8-68.fc13.i686.PAE)
Now, before someone points it out, this is just a synthetic test
that measures scheduling latency, not a real audio application.
See below for details... (look at the "Avg:" and "Max:" latency
values, those are in microseconds)
Unless I have done something wrong, it looks like we have a long way
to go with regards to scheduling latency in anything other than
2.6.33 + rt patches. But, with threaded irqs in 2.6.39 maybe the
performance with audio applications running under jack will be good
anyway as we will be able to tune irq processing. Seems to me
unlikely. I have not tested that yet.
Tests were done after a clean reboot, initially with the machine
idle and then while loading thunderbird with tons of emails and
firefox with tons of pages. No audio work.
YMMV...
-- Fernando
[*]
https://rt.wiki.kernel.org/index.php/RT_PREEMPT_HOWTO
----------------------------------------------------------------------
LENOVO T510
----------------------------------------------------------------------
2.6.33.13-149.rt31.2.fc13.ccrma.i686.rtPAE
----------------------------------------------------------------------
$ while true ; do ./cyclictest -t1 -p 80 -n -i 10000 -l 10000 ; done
policy: fifo: loadavg: 0.02 0.20 0.11 1/405 7024
T: 0 ( 7024) P:80 I:10000 C: 10000 Min: 3 Act: 75 Avg: 54
Max: 121
policy: fifo: loadavg: 0.08 0.17 0.10 2/405 7027
T: 0 ( 7026) P:80 I:10000 C: 10000 Min: 3 Act: 73 Avg: 75
Max: 126
policy: fifo: loadavg: 0.01 0.12 0.09 1/405 7029
T: 0 ( 7029) P:80 I:10000 C: 10000 Min: 3 Act: 90 Avg: 49
Max: 141
policy: fifo: loadavg: 0.37 0.21 0.12 1/405 7031
T: 0 ( 7031) P:80 I:10000 C: 10000 Min: 4 Act: 70 Avg: 76
Max: 148
policy: fifo: loadavg: 0.27 0.21 0.12 1/405 7033
T: 0 ( 7033) P:80 I:10000 C: 10000 Min: 4 Act: 46 Avg: 73
Max: 144
policy: fifo: loadavg: 0.15 0.20 0.12 1/405 7035
T: 0 ( 7035) P:80 I:10000 C: 10000 Min: 3 Act: 90 Avg: 77
Max: 142
policy: fifo: loadavg: 0.07 0.15 0.11 2/405 7037
T: 0 ( 7037) P:80 I:10000 C: 10000 Min: 3 Act: 16 Avg: 71
Max: 135
policy: fifo: loadavg: 0.05 0.12 0.10 1/405 7040
T: 0 ( 7039) P:80 I:10000 C: 10000 Min: 3 Act: 84 Avg: 72
Max: 142
policy: fifo: loadavg: 0.01 0.08 0.08 1/405 7042
T: 0 ( 7042) P:80 I:10000 C: 10000 Min: 3 Act: 105 Avg: 51
Max: 146
policy: fifo: loadavg: 0.00 0.05 0.07 1/406 7045
T: 0 ( 7044) P:80 I:10000 C: 10000 Min: 4 Act: 11 Avg: 50
Max: 121
policy: fifo: loadavg: 0.07 0.06 0.07 1/406 7047
T: 0 ( 7047) P:80 I:10000 C: 10000 Min: 2 Act: 73 Avg: 76
Max: 140
policy: fifo: loadavg: 0.01 0.04 0.06 1/406 7049
T: 0 ( 7049) P:80 I:10000 C: 10000 Min: 3 Act: 67 Avg: 70
Max: 137
policy: fifo: loadavg: 0.02 0.04 0.06 1/406 7051
T: 0 ( 7051) P:80 I:10000 C: 9573 Min: 3 Act: 68 Avg: 47
Max: 146
policy: fifo: loadavg: 0.02 0.04 0.06 1/406 7053
----------------------------------------------------------------------
2.6.34.8-68.fc13.i686.PAE
----------------------------------------------------------------------
$ while true ; do ./cyclictest -t1 -p 80 -n -i 10000 -l 10000 ;
sleep 10; done
policy: fifo: loadavg: 0.20 0.33 0.15 1/298 2559
T: 0 ( 2521) P:80 I:10000 C: 10000 Min: 3 Act: 12 Avg: 36
Max: 354
policy: fifo: loadavg: 0.34 0.30 0.16 1/332 2676
T: 0 ( 2583) P:80 I:10000 C: 10000 Min: 3 Act: 12 Avg: 31
Max: 1749
policy: fifo: loadavg: 0.39 0.38 0.20 1/350 2835
T: 0 ( 2726) P:80 I:10000 C: 10000 Min: 2 Act: 9 Avg: 33
Max: 12861
policy: fifo: loadavg: 0.11 0.29 0.18 2/350 2839
T: 0 ( 2838) P:80 I:10000 C: 10000 Min: 3 Act: 12 Avg: 43
Max: 133
policy: fifo: loadavg: 0.02 0.19 0.16 1/348 2842
T: 0 ( 2842) P:80 I:10000 C: 10000 Min: 4 Act: 75 Avg: 48
Max: 17789
policy: fifo: loadavg: 0.07 0.15 0.14 1/347 2858
T: 0 ( 2845) P:80 I:10000 C: 10000 Min: 4 Act: 56 Avg: 50
Max: 1808
policy: fifo: loadavg: 0.18 0.15 0.14 1/347 2861
T: 0 ( 2861) P:80 I:10000 C: 10000 Min: 3 Act: 11 Avg: 52
Max: 187
policy: fifo: loadavg: 0.34 0.19 0.15 1/345 2864
T: 0 ( 2864) P:80 I:10000 C: 10000 Min: 4 Act: 69 Avg: 46
Max: 119
policy: fifo: loadavg: 0.39 0.28 0.19 1/346 2869
T: 0 ( 2867) P:80 I:10000 C: 10000 Min: 3 Act: 14 Avg: 27
Max: 361
policy: fifo: loadavg: 0.10 0.20 0.17 1/347 2875
T: 0 ( 2872) P:80 I:10000 C: 10000 Min: 4 Act: 14 Avg: 31
Max: 425
policy: fifo: loadavg: 0.01 0.13 0.15 1/346 2882
T: 0 ( 2879) P:80 I:10000 C: 10000 Min: 4 Act: 58 Avg: 55
Max: 186
policy: fifo: loadavg: 0.09 0.12 0.13 1/346 2887
T: 0 ( 2885) P:80 I:10000 C: 10000 Min: 4 Act: 67 Avg: 50
Max: 129
policy: fifo: loadavg: 0.10 0.12 0.13 1/347 2890
----------------------------------------------------------------------
2.6.39.1-1.threadirqs.1.fc14.ccrma.i686.PAE
----------------------------------------------------------------------
$ while true ; do ./cyclictest -t1 -p 80 -n -i 10000 -l 10000 ;
sleep 10; done
policy: fifo: loadavg: 0.13 0.25 0.12 1/290 2279
T: 0 ( 2279) P:80 I:10000 C: 10000 Min: 5 Act: 42 Avg: 45
Max: 1015
policy: fifo: loadavg: 0.64 0.36 0.18 1/338 2567
T: 0 ( 2299) P:80 I:10000 C: 10000 Min: 4 Act: 48 Avg: 44
Max: 3124
policy: fifo: loadavg: 0.20 0.30 0.18 1/337 2583
T: 0 ( 2571) P:80 I:10000 C: 10000 Min: 3 Act: 43 Avg: 50
Max: 10301
policy: fifo: loadavg: 0.07 0.22 0.16 2/341 2592
T: 0 ( 2586) P:80 I:10000 C: 10000 Min: 5 Act: 30 Avg: 46
Max: 15227
policy: fifo: loadavg: 0.48 0.33 0.21 3/340 2602
T: 0 ( 2595) P:80 I:10000 C: 10000 Min: 4 Act: 7 Avg: 29
Max: 992
policy: fifo: loadavg: 0.17 0.28 0.21 1/340 2613
T: 0 ( 2610) P:80 I:10000 C: 10000 Min: 3 Act: 15 Avg: 32
Max: 99
policy: fifo: loadavg: 0.34 0.27 0.21 4/346 2660
T: 0 ( 2616) P:80 I:10000 C: 10000 Min: 3 Act: 14 Avg: 36
Max: 1326
policy: fifo: loadavg: 0.14 0.25 0.22 2/342 2680
T: 0 ( 2665) P:80 I:10000 C: 10000 Min: 3 Act: 14 Avg: 38
Max: 709
policy: fifo: loadavg: 0.18 0.24 0.22 1/342 2687
T: 0 ( 2683) P:80 I:10000 C: 10000 Min: 4 Act: 17 Avg: 44
Max: 17692
policy: fifo: loadavg: 0.15 0.23 0.22 1/343 2690
----------------------------------------------------------------------
2.6.34.8-68.rt0.3.fc13.ccrma.i686.rtPAE
----------------------------------------------------------------------
while true ; do ./cyclictest -t1 -p 80 -n -i 10000 -l 10000 ; sleep 10; done
policy: fifo: loadavg: 0.19 0.30 0.13 1/355 2561
T: 0 ( 2542) P:80 I:10000 C: 10000 Min: 3 Act: 27 Avg: 33
Max: 143
policy: fifo: loadavg: 0.03 0.20 0.11 1/354 2565
T: 0 ( 2564) P:80 I:10000 C: 10000 Min: 6 Act: 15 Avg: 55
Max: 135
policy: fifo: loadavg: 0.53 0.27 0.14 3/401 2780
T: 0 ( 2568) P:80 I:10000 C: 10000 Min: 3 Act: 9 Avg: 21
Max: 134
policy: fifo: loadavg: 0.50 0.39 0.20 1/405 2899
T: 0 ( 2869) P:80 I:10000 C: 10000 Min: 3 Act: 66 Avg: 36
Max: 119
policy: fifo: loadavg: 0.13 0.28 0.18 1/404 2902
T: 0 ( 2902) P:80 I:10000 C: 10000 Min: 3 Act: 48 Avg: 31
Max: 116
policy: fifo: loadavg: 0.10 0.27 0.17 1/405 2905
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user(a)lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-user
--
Aurélien