Very abnormal "machine-breaking" pcnet_cs.c performance
From: Andreas Mohr
Date: Sun Apr 10 2005 - 15:41:08 EST
I've got an NE2000 Combo card which I'm using on a BNC(!) network.
I've been having rather annoying performance issues for several years already
when I used it from time to time, and now I analyzed the problem.
This is on 2.6.11-ck4, but going back through many versions all the way
When doing FTP transfers there is a *SEVERE* machine lag (P3/700 notebook),
even when running the FTP process as SCHED_BATCH background scheduling
(Con Kolivas kernel). This will show in the form of severe mouse cursor lag
("interactivity" is about one twentieth of what it normally is, judging
from the cursor jumps on screen of about 2 centimeters).
To find out more about this issue, I tested Takashi Iwai's latency test
tool, and - SURPRISE SURPRISE! - with 100% X11 load from doing those graphics
tests, mouse cursor handling is perfect again (as is timely reaction by
other applications such as browser etc.).
The top output during such a transfer is:
1.3% us, 4.6% sy, 0.0% ni, 0.0% id, 4.3% wa, 7.0% hi, 82.8% si
i.e. it spends 82% CPU time in soft IRQs!!
This figure gets decreased in the case of the X11 graphics tests, in
which case machine interactivity is back to a sane level due to the soft
IRQ number being down to 0.0% even!
When using SCP instead of FTP, interactivity is also much better with
only 30% CPU time spent in soft IRQs.
Now my question is: is this very severe performance issue expected with
an NE2000 ISA (CardBus) card (I really doubt that it should be that
severe), or what would be the problem here?
(IOW: I know that NE2000 cards suck, but...)
Having severe performance issues during network transfers in case of almost
no CPU load vs. having good interactivity in case of full CPU load
strikes me as being VERY odd.
I'm going to investigate soft IRQ handling of the affected drivers now.
My bet is that something is doing some (IRQ?) locking in an entirely
Any hints are welcome!
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html