Date: Tue, 20 Aug 2002 13:57:36 -0700 From: Luigi Rizzo <rizzo@icir.org> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: freebsd-net@FreeBSD.ORG Subject: Re: m_getcl and end-to-end performance Message-ID: <20020820135736.A50369@iguana.icir.org> In-Reply-To: <15714.43504.493596.791872@grasshopper.cs.duke.edu>; from gallatin@cs.duke.edu on Tue, Aug 20, 2002 at 04:43:28PM -0400 References: <15714.27671.533860.408996@grasshopper.cs.duke.edu> <20020820093939.B48541@iguana.icir.org> <15714.39494.661931.882244@grasshopper.cs.duke.edu> <20020820132957.B49141@iguana.icir.org> <15714.43504.493596.791872@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 20, 2002 at 04:43:28PM -0400, Andrew Gallatin wrote:
...
> For a driver with lower overhead (fxp), I see ~12K pkts/sec improvemnt
> again, SMP and not POLLING) from ~90Kpkts/sec -> to 102Kpkts/sec for
> minimally tiny packets.
which gets you close to the max throughput for the chip (not the driver!)
used by the "fxp" driver, which is:
103kpps with standard TxCB
113kpps with extended TxCB
127kpps if you know the above problem, so do not use buffer
descriptors and copy (small) packets into the TxCB
don't ask me why, i have no docs and no idea
But this is not the only chip which does weird things. Even the
21143, which can go at full speed (148.8kpps), suddenly wastes an
extra ~4us when a packet is split across two or more buffers in
different descriptors (the "dc" driver has this problem, the "de"
driver is slightly smarter and uses the two pointers in each
descriptor to point to two buffers, so there you have the problem
when you get to 3 buffers).
Performance evaluation is a lot of fun :)
cheers
luigi
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020820135736.A50369>
