Subject: Re: Ethernet address copy performance tweak
To: Jason R Thorpe <thorpej@wasabisystems.com>
From: =?ISO-8859-1?Q?Andreas_=D6man?= <andreas@packetfront.com>
List: tech-net
Date: 08/19/2002 10:01:17
Jason R Thorpe wrote:
> On Sat, Aug 17, 2002 at 10:52:18AM -0700, Jason R Thorpe wrote:
>
> > A few of the changes we have made have been micro-optimizations. One
> > of these optimizations, which erked out another 2-3Mb/s (190Mb/s to
> > 193Mb/s), was to ensure that copies of an Ethernet address in ether_output()
> > and ether_input() are always inlined.
>
> I'd like to follow up on this...
>
> This change has a bit more impact now that we've fixed other performance
> issues on the platform in question. ether_copy() is now responsible for
> about a 6Mb/s improvement (205Mb/s to 211Mb/s)[*].
Just out of curiosity. Have anyone tried working with prebuilt
ether-headers (stored somewhere in the rtentry for a link local route) ?
And just let the NIC DMA gather it for you and no copying needs to be
done at all.
Or would that cause too much performance penalties in the NIC because we
consume too many DMA descriptors for one single packet ?
regards
Andreas