[realtek] What throughput can be expected

Jeff Garzik jgarzik@mandrakesoft.com
Mon Jan 7 18:38:02 2002

Donald Becker wrote:
> On Mon, 7 Jan 2002, Jeff Garzik wrote:
> > Donald Becker wrote:
> > > The extra copying copy of packets to and from the memory used by the
> > > rtl8139, and various overheads depending on the kernel version.  The 2.0
> > > kernels were more efficient that the 2.2 and 2.4 kernels.
> >
> > I do not see how this could possibly be true:  8139too in 2.4 kernels
> > copies buffers half as much as other 8139 drivers / kernels.  See
> > skb_copy_and_csum_dev and its use.  A P166 should fare far better on 2.4
> > than either kernels due to the dramatically lowered packet buffer copy
> > costs.
> You parsed that differently than it was written.  The comma was
> intentional: the 2.0 kernel has lower protocol processing overhead than
> the 2.2 and 2.4 kernels.  This is independent of the driver data copy
> path.

ah, oops.  yes, WRT the stack I agree.

> The rtl8139 driver has always used eth_copy_and_sum() in the Rx path.
> It is unique in being the only driver that takes maximum advantage of
> this function -- other PCI NICs are descriptor-based and don't require
> the extra Rx copy.

eth_copy_and_sum became basically an unconditional alias to memcpy in
2.4 (see include/linux/etherdevice.h), note...  So the truth of the
situation appears to be the use of skb_copy_and_csum_dev is needed in
2.4 to -maintain- the performance it's historically had, not increase
performance as I had thought.


Jeff Garzik      | Alternate titles for LOTR:
Building 1024    | Fast Times at Uruk-Hai
MandrakeSoft     | The Took, the Elf, His Daughter and Her Lover
                 | Samwise Gamgee: International Hobbit of Mystery