[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1305168768.4065.382.camel@localhost>
Date: Thu, 12 May 2011 03:52:48 +0100
From: Ben Hutchings <bhutchings@...arflare.com>
To: Anton Blanchard <anton@...ba.org>
Cc: leitao@...ux.vnet.ibm.com, michael@...erman.id.au,
jesse@...nel.org, netdev@...r.kernel.org
Subject: Re: [PATCH 07/15] ehea: Allocate large enough skbs to avoid
partial cacheline DMA writes
On Thu, 2011-05-12 at 10:52 +1000, Anton Blanchard wrote:
> plain text document attachment (ehea_8.patch)
> The ehea adapter has a mode where it will avoid partial cacheline DMA
> writes on receive by always padding packets to fall on a cacheline
> boundary.
>
> Unfortunately we currently aren't allocating enough space for a full
> ethernet MTU packet to be rounded up, so this optimisation doesn't hit.
>
> It's unfortunate that the next largest packet size exposed by the
> hypervisor interface is 2kB, meaning our skb allocation comes out of a
> 4kB SLAB. However the performance increase due to this optimisation is
> quite large and my TCP stream numbers increase from 900MB to 1000MB/sec.
You can allocate page buffers and then split them into exactly 2K
segments. If you switch from inet_lro to GRO then GRO will handle the
eventual skb allocation for you (even for non-mergeable packets).
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists