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>