Re: [PATCH 0/2]: Remote softirq invocation infrastructure.

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Chris Friesen <cfriesen@...>
Cc: David Miller <davem@...>, <linux-kernel@...>, <netdev@...>, <jens.axboe@...>, <steffen.klassert@...>
Date: Tuesday, September 23, 2008 - 5:10 pm

>

We've been running softRSS for a while
(http://marc.info/?l=linux-netdev&m=120475045519940&w=2) which I
believe has very similar functionality to this patch.  From this work
we found some nice ways to improve scaling that might be applicable:

- When routing packets to CPU based on hash, sending to another CPU
sharing L2 or L3 cache is best performance.
- We added a simple functionality to route packets to the CPU on which
the application last did a read for the socket.  This seems to be a
win for cache locality.
- We added a lookup table that maps the Toeplitz hash to the receiving
CPU where the application is running.  This is for those devices that
provide the Toeplitz hash in the receive descriptor.  This is a win
since the CPU receiving the interrupt doesn't need to take any cache
misses on the packet itself.
- In our (preliminary) 10G testing we found that routing packets in
software with the the above trick actually allows higher PPS and
better CPU utilization than using hardware RSS.  Also, using both the
software routing and hardware RSS yields the best results.

Tom

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 0/2]: Remote softirq invocation infrastructure., David Miller, (Sat Sep 20, 2:48 am)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Tom Herbert, (Tue Sep 23, 5:10 pm)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Daniel Walker, (Sat Sep 20, 11:29 am)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Arjan van de Ven, (Sat Sep 20, 11:45 am)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Daniel Walker, (Sat Sep 20, 12:02 pm)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Arjan van de Ven, (Sat Sep 20, 12:19 pm)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Steffen Klassert, (Sun Sep 21, 5:46 am)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Steffen Klassert, (Mon Sep 22, 9:54 am)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., James Courtier-Dutton, (Sun Sep 21, 5:13 am)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Ilpo Järvinen, (Mon Sep 22, 6:36 am)
Re: [PATCH 0/2]: Remote softirq invocation infrastructure., Arjan van de Ven, (Sat Sep 20, 2:09 pm)