Re: Real-Time Preemption, -RT-2.6.10-rc2-mm3-V0.7.31-7

From: Rui Nuno Capela
Date: Tue Nov 30 2004 - 05:33:11 EST


Ingo Molnar wrote:
>
> * Ingo Molnar <mingo@xxxxxxx> wrote:
>
>> but please try to the -31-10 kernel that i've just uploaded, it has a
>> number of tracer enhancements:
>
> make that -31-13 (or later). Earlier kernels had a bug in where the
> process name tracking only worked for the first latency trace saved,
> subsequent traces showed 'unknown' for the process name. In -13 i've
> also added a printk that shows the latest user latency in a one-line
> printk - just like the built-in latency tracing modes do:
>
> (gettimeofday/3671/CPU#0): new 3068 us user-latency.
> (gettimeofday/3784/CPU#0): new 1008627 us user-latency.
>
> (this should also make it easier for helper scripts to save the traces,
> whenever they happen.)
>

OK.

I did my homework and managed to grab some latency traces for you to take
a look and see if it's alright. Please.

On attach you may find the files:

xruntrace1.1.tar.gz
- scripts used to arm and capture the latency traces;

jack-0.99.14.0xruntrace-alsa.patch.gz
- the actual patch applied to jack for trace auto-triggering;

config-2.6.10-rc2-mm3-RT-V0.7.31-13.gz
- the running kernel configuration, as taken from /proc/config.gz

xruntrace1-2.6.10-rc2-mm3-RT-V0.7.31-13-*.trc.gz
- the captured traces, as dumped with xruntrace1_watch.sh script.

jack_test3.2.tar.gz
- updated my jack_test3 benchmarking suite.


The traces were captured, while running a usual KDE desktop session (from
qjackctl) on my P4@xxxxxxx laptop (Mandrake 10.1):

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

Each trace shows only the first XRUN occurrence on a distinct jackd
session. Every other trace were triggered and captured after restarting
jackd.

Must say that XRUNs are rare but do occurr. Using the same jackd command
line, my jack_test3 suite is showing these figures by now:

*********** CONSOLIDATED RESULTS ************
Total seconds ran . . . . . . : 7200
Number of clients . . . . . . : 16
Ports per client . . . . . . : 4
*********************************************
Summary Result Count . . . . : 2 / 2
*********************************************
Timeout Rate . . . . . . . . :( 0.0)/hour
XRUN Rate . . . . . . . . . . : 13.8 /hour
Delay Rate (>spare time) . . : 13.8 /hour
Delay Rate (>1000 usecs) . . : 7.0 /hour
Delay Maximum . . . . . . . . : 1022 usecs
Cycle Maximum . . . . . . . . : 1048 usecs
Average DSP Load. . . . . . . : 62.2 %
Average CPU System Load . . . : 20.6 %
Average CPU User Load . . . . : 48.5 %
Average CPU Nice Load . . . . : 0.0 %
Average CPU I/O Wait Load . . : 0.0 %
Average CPU IRQ Load . . . . : 0.0 %
Average CPU Soft-IRQ Load . . : 0.0 %
Average Interrupt Rate . . . : 1689.2 /sec
Average Context-Switch Rate . : 19778.2 /sec
*********************************************

The IRQ process/threading priority status has been fixed as shown below:

PID CLS RTPRIO NI PRI %CPU STAT COMMAND
2 FF 90 - 130 0.0 S IRQ 0
728 FF 80 - 120 0.0 S< IRQ 8
2943 FF 70 - 110 0.0 S< IRQ 5
1500 FF 60 - 100 0.0 S< IRQ 10
841 FF 50 - 90 0.0 S< IRQ 1
736 FF 49 - 89 0.0 S< IRQ 12
20 FF 48 - 88 0.0 S< IRQ 9
814 FF 45 - 85 0.0 S< IRQ 6
821 FF 44 - 84 0.0 S< IRQ 14
823 FF 43 - 83 0.0 S< IRQ 15
2227 FF 40 - 80 0.0 S< IRQ 11

# cat /proc/interrupts

CPU0
0: 6435186 XT-PIC timer 0/35186
1: 1164 XT-PIC i8042 1/1164
2: 0 XT-PIC cascade 0/0
5: 73 XT-PIC ALI 5451 0/72
8: 1 XT-PIC rtc 0/1
9: 20602 XT-PIC acpi 0/20602
10: 0 XT-PIC ohci_hcd, ohci_hcd 0/0
11: 5 XT-PIC yenta 5/5
12: 64317 XT-PIC i8042 0/64317
14: 11772 XT-PIC ide0 0/11772
15: 19 XT-PIC ide1 0/19
NMI: 0
LOC: 0
ERR: 0
MIS: 0


Cheers.
--
rncbc aka Rui Nuno Capela
rncbc@xxxxxxxxx

Attachment: xruntrace1.1.tar.gz
Description: application/gzip-compressed

Attachment: jack-0.99.14.0xruntrace-alsa.patch.gz
Description: application/gzip-compressed

Attachment: config-2.6.10-rc2-mm3-RT-V0.7.31-13.gz
Description: application/gzip-compressed

Attachment: xruntrace1-2.6.10-rc2-mm3-RT-V0.7.31-13-20041129154425.trc.gz
Description: application/gzip-compressed

Attachment: xruntrace1-2.6.10-rc2-mm3-RT-V0.7.31-13-20041129184639.trc.gz
Description: application/gzip-compressed

Attachment: xruntrace1-2.6.10-rc2-mm3-RT-V0.7.31-13-20041129195721.trc.gz
Description: application/gzip-compressed

Attachment: jack_test3.2.tar.gz
Description: application/gzip-compressed