Re: [Q]: Linux and real device drivers

Steve Underwood (steveu@infowebtelecom.com)
Thu, 23 Sep 1999 06:25:04 +0000


Jes Sorensen wrote:

> >>>>> "Jamie" == Jamie Lokier <lkd@tantalophile.demon.co.uk> writes:
>
> Jamie> For high-speed packet networking, under heavy load, it's
> Jamie> possible that timer-scheduled polling gives less overhead than
> Jamie> packet driven interrupts.
>
> Jamie> A card that can be told "don't interrupt me for N us after
> Jamie> receiving the next packet, unless you hit the high water mark"
> Jamie> would be even better.
>
> Thats exactly what some Gigabit Ethernet cards do.

A number of newer devices do this. It has benefits, but it has a downside
too. It imposes significant extra latency when there is just a light load,
which can hurt performance on transactional traffic. A better scheme might be
more like the 16550 UART. Interrupt if you hit the high tide point, or the
wire goes quiet for a short while. Short here can mean very short. This gives
more interrupts under light load, when you probably have plenty of spare CPU
cycles to deal them. When the load increases the interrupt rate drops. I
haven't seen an Ethernet chip which works in that way, but then I haven't
studied them all.

Steve

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