[Intel-wired-lan] [RFC PATCH 0/2] net:setup XPS mapping for each online CPU
Eric Dumazet
edumazet at google.com
Thu Mar 15 15:31:52 UTC 2018
On Thu, Mar 15, 2018 at 8:08 AM Paolo Abeni <pabeni at redhat.com> wrote:
> Currently, most MQ netdevice setup the default XPS configuration mapping
1-1
> the first real_num_tx_queues queues and CPUs and no mapping is created for
> the CPUs with id greater then real_num_tx_queues, if any.
> As a result, the xmit path for unconnected sockets on such cores
experiences a
> relevant overhead in netdev_pick_tx(), which needs to dissect each packet
and
> compute its hash.
> Such scenario is easily triggered. e.g. from DNS server under relevant
load, as
> the user-space process is moved away from the CPUs serving the softirqs
(note:
> this is beneficial for the overall DNS server performances).
> This series introduces an helper to easily setup up XPS mapping for all
the
> online CPUs, and use it in the ixgbe driver, demonstrating a relevant
> performance improvement in the above scenario.
> Paolo Abeni (2):
> net: introduce netif_set_xps()
> ixgbe: setup XPS via netif_set_xps()
Resent, not HTML this time, sorry for duplication.
I truly believe XPS should not be setup by devices.
XPS is policy, and policy does belong to user space.
User space knows that CPU 2 and 3 (pure examples) are reserved for storage
interrupts, not NIC ones.
Note that if XPS is not setup, MQ queue selection is just fine by default ;
More information about the Intel-wired-lan
mailing list