[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <470AE373.9020207@garzik.org>
Date: Mon, 08 Oct 2007 22:12:03 -0400
From: Jeff Garzik <jeff@...zik.org>
To: David Miller <davem@...emloft.net>
CC: hadi@...erus.ca, peter.p.waskiewicz.jr@...el.com,
krkumar2@...ibm.com, johnpol@....mipt.ru,
herbert@...dor.apana.org.au, kaber@...sh.net,
shemminger@...ux-foundation.org, jagana@...ibm.com,
Robert.Olsson@...a.slu.se, rick.jones2@...com, xma@...ibm.com,
gaagaan@...il.com, netdev@...r.kernel.org, rdreier@...co.com,
mcarlson@...adcom.com, mchan@...adcom.com,
general@...ts.openfabrics.org, tgraf@...g.ch,
randy.dunlap@...cle.com, sri@...ibm.com
Subject: Re: [PATCH 2/3][NET_BATCH] net core use batching
David Miller wrote:
> 1) A library for transmit load balancing functions, with an interface
> that can be made visible to userspace. I can write this and test
> it on real multiqueue hardware.
>
> The whole purpose of this library is to set skb->queue_mapping
> based upon the load balancing function.
>
> Facilities will be added to handle virtualization port selection
> based upon destination MAC address as one of the "load balancing"
> methods.
Groovy.
I'm interested in working on a load balancer function that approximates
skb->queue_mapping = smp_processor_id()
I'd be happy to code and test in that direction, based on your lib.
> 2) Switch the default qdisc away from pfifo_fast to a new DRR fifo
> with load balancing using the code in #1. I think this is kind
> of in the territory of what Peter said he is working on.
>
> I know this is controversial, but realistically I doubt users
> benefit at all from the prioritization that pfifo provides. They
> will, on the other hand, benefit from TX queue load balancing on
> fast interfaces.
IMO the net driver really should provide a hint as to what it wants.
8139cp and tg3 would probably prefer multiple TX queue behavior to match
silicon behavior -- strict prio.
And I'll volunteer to write the net driver code for that, if people want
to see how things would look for that type of hardware packet scheduling.
> 3) Work on discovering a way to make the locking on transmit as
> localized to the current thread of execution as possible. Things
> like RCU and statistic replication, techniques we use widely
> elsewhere in the stack, begin to come to mind.
Definitely.
Jeff
-
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