From: Alexander Duyck <alexander.h.duyck@intel.com>
To: Andi Kleen <andi@firstfloor.org>
Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>,
davem@davemloft.net, netdev@vger.kernel.org, gospo@redhat.com,
sassmann@redhat.com
Subject: Re: [net-next 02/11] igb: Use node specific allocations for the q_vectors and rings
Date: Mon, 10 Oct 2011 10:02:07 -0700 [thread overview]
Message-ID: <4E93250F.9090000@intel.com> (raw)
In-Reply-To: <20111010163228.GA14482@one.firstfloor.org>
On 10/10/2011 09:32 AM, Andi Kleen wrote:
>> The RR configuration is somewhat arbitrary. However it is still better
>> than dumping everyting on a single node, and it works with the
>> configuration when the rings numbers line up with the CPU numbers since
>> normally the CPUs are RR on the nodes. From what I have seen it does
>> work quite well and it prevents almost all cross-node memory accesses
>> when running a routing workload.
>
> Ok so it's optimized for one specific workload. I'm sure you'll
> find some other workload where it doesn't work out.
It isn't that I optimized it for one specific workload. I was just
citing that specific workload as one of the ones seeing the advantage.
> I suppose it's hard to get right in the general case, but best
> would be if ethtool had a nice and easy interface to set it at least.
The general case is never right for this it seems like. At least in
this case it becomes much easier to line up the memory and interrupts so
that they are all affinitized to the same core. From there RPS/RFS can
typically be used to spread out the work more if necessary.
> However one disadvantage of that patch over the existing state of the
> art (numactl modprobe ...) is that there's no way to override the placement
> now. So if you do the forced RR I think you need the ethtool part too,
> or at least some parameter to turn it off.
>
> -Andi
The counter argument to that though is that the approach you mention
always limits you to one node. At least with this approach we are
spread out over multiple nodes so that we can make full use of the
memory bandwidth on the system.
Thanks,
Alex
next prev parent reply other threads:[~2011-10-10 17:01 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-08 6:47 [net-next 00/11][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
2011-10-08 6:47 ` [net-next 01/11] igb: push data into first igb_tx_buffer sooner to reduce stack usage Jeff Kirsher
2011-10-08 6:47 ` [net-next 02/11] igb: Use node specific allocations for the q_vectors and rings Jeff Kirsher
2011-10-08 19:51 ` David Miller
2011-10-10 16:15 ` Alexander Duyck
2011-10-10 17:50 ` David Miller
2011-10-09 18:08 ` Andi Kleen
2011-10-10 16:25 ` Alexander Duyck
2011-10-10 16:32 ` Andi Kleen
2011-10-10 17:02 ` Alexander Duyck [this message]
2011-10-08 6:47 ` [net-next 03/11] igb: avoid unnecessary conversions from u16 to int Jeff Kirsher
2011-10-08 6:47 ` [net-next 04/11] igb: Consolidate all of the ring feature flags into a single value Jeff Kirsher
2011-10-08 6:47 ` [net-next 05/11] igb: Move ITR related data into work container within the q_vector Jeff Kirsher
2011-10-08 6:47 ` [net-next 06/11] igb: cleanup IVAR configuration Jeff Kirsher
2011-10-08 6:47 ` [net-next 07/11] igb: retire the RX_CSUM flag and use the netdev flag instead Jeff Kirsher
2011-10-08 6:47 ` [net-next 08/11] igb: leave staterr in place and instead us a helper function to check bits Jeff Kirsher
2011-10-08 6:47 ` [net-next 09/11] igb: fix recent VLAN changes that would leave VLANs disabled after reset Jeff Kirsher
2011-10-08 6:47 ` [net-next 10/11] igb: move TX hang check flag into ring->flags Jeff Kirsher
2011-10-08 6:47 ` [net-next 11/11] igb: add support for NETIF_F_RXHASH Jeff Kirsher
2011-10-08 6:52 ` [net-next 00/11][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E93250F.9090000@intel.com \
--to=alexander.h.duyck@intel.com \
--cc=andi@firstfloor.org \
--cc=davem@davemloft.net \
--cc=gospo@redhat.com \
--cc=jeffrey.t.kirsher@intel.com \
--cc=netdev@vger.kernel.org \
--cc=sassmann@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).