[ltp] cpu load on PCMCIA usage
Maik Musall
linux-thinkpad@linux-thinkpad.org
Fri, 15 Nov 2002 01:05:10 +0100
Hello Dean,
thanks for your elaborate answer. Now it seems clear that my LinkSys is
not cardbus and thus cannot achieve higher rates. I will try irqtune to
get response time back to reasonable values.
But there's some thing that's unclear. Although someone already said
that card is 16bit (by looking at it), I remember having tried it with
Windows 2000, where it did achieve about 6-7 MByte/s throughput at
low cpu load. I don't know if I remember correctly since I almost
alwas run Linux and W2k only in a vmware session. I don't want
to reboot now to check because I would lose my uptime (did not
boot since June 6th 2002, only suspend-to-ram... ;-)
I will check next time I'm forced to reboot.
Maik
On Wed, Nov 13, 2002 at 12:46:48PM -0500, Dean L. Hedin wrote:
> Yea, cardbus, that's the problem. It all depends if your
> PCMCIA controller supports cardbus.
>
> The snippet below explains the throughput side of things..
> But what about the CPU load? I suspect that the code is
> using REP OUTST instructions to fill the ethernet card's
> buffer. In the normal 16 bit bus/10mb ethernet case this
> would happen only every so often. But in the case of a
> 16 bit bus/100mb ethernet, the CPU performs the REP OUTST
> to move the data, then the ethernet card imeadiately signals again
> for more data. The CPU thusly becomes I/O bounded.
>
> Kinda sucks huh? If you do not have cardbus controller, no sense
> in getting a 100mb ethernet card :)
>
> If the ethernet card signals "empty buffer" with an interrupt, then
> in this case you would want to set the ethernet card interrupt to
> the LOWEST priority in the system. This won't lighten the CPU load
> but will ensure that other system interrupts get taken care of ahead
> of the ethernet card (which can't be filled fast enough anyhow).
>
> So you may want to play with irqtune after all.
>
> Here is the quote from the PCMCIA HOWTO:
>
> "16-bit PCMCIA cards have a maximum performance of 1.5-2 MB/sec. That
> means that any 16-bit 100baseT card (i.e., any card that uses the
> pcnet_cs, 3c574_cs, smc91c92_cs, or xirc2ps_cs
> driver) will never achieve full 100baseT throughput. Only CardBus
> network adapters can fully exploit 100baseT data rates."
> --
> The linux-thinkpad mailing list home page is at:
> http://mailman.linux-thinkpad.org/mailman/listinfo/linux-thinkpad
--
Maik Musall, maik@musall.de, http://www.musall.de
PGP fingerprint: 99 F6 3D F5 BA 42 50 94 01 36 FA A9 27 9D 3C 39