Re: softirqd

From: Richard B. Johnson
Date: Tue Nov 18 2003 - 17:42:35 EST


On Wed, 19 Nov 2003, Peter Chubb wrote:

>
>
>
> Kernwek Jalsl said:
>
> Kernwek> Sorry in case I was not very clear with my
> Kernwek> requirements. With real time interrupt I meant a
> Kernwek> real time task waiting for IO from this interrupt.
> Kernwek> Assume that I have a high priority interrupt and a
> Kernwek> real time task waiting for it. Well followimg are the
> Kernwek> various latencies involved:
> Kernwek> L1- interrupt latency
> Kernwek> L2- hard and soft IRQ completion
> Kernwek> L3 - scheduler latency
> Kernwek> L4 - scheduler completion
>
> Kernwek> L1 is pretty acceptable on Linux.
>
> I've been trying to measure this. On IA64 I'm measuring around
> 2.5microseconds (on a 900MHz machine). I personally think that this
> is too big, and could be reduced.


I have a driver which, upon getting an IRQ7 (printer-port interrupt),
just reads the 'paper-out' bit and writes the result to the data-port.
This allows me to toggle the bit and measure the time using a 'scope
and a function generator. The complete time for everything is about
900 nanoseconds on this machine:

processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 5
model name : Pentium II (Deschutes)
stepping : 1
cpu MHz : 399.568
cache size : 512 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr
bogomips : 797.90

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 5
model name : Pentium II (Deschutes)
stepping : 1
cpu MHz : 399.568
cache size : 512 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr
bogomips : 797.90


I have to disconnect the network before making the test because
the network driver will hog too much CPU time handling broadcast
messages to make any useful measurments.

Considering that it takes 150 to 200 ns to read/write the printer-
port, I don't think that's too bad.


[SNIPPED...]



Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
Note 96.31% of all statistics are fiction.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/