[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1473815917.18970.266.camel@edumazet-glaptop3.roam.corp.google.com>
Date: Tue, 13 Sep 2016 18:18:37 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: Michael Ma <make0818@...il.com>
Cc: netdev <netdev@...r.kernel.org>
Subject: Re: Modification to skb->queue_mapping affecting performance
On Tue, 2016-09-13 at 17:23 -0700, Michael Ma wrote:
> If I understand correctly this is still to associate a qdisc with each
> ifb TXQ. How should I do this if I want to use HTB? I guess I'll need
> to divide the bandwidth of each class in HTB by the number of TX
> queues for each individual HTB qdisc associated?
>
> My original idea was to attach a HTB qdisc for each ifb queue
> representing a set of flows not sharing bandwidth with others so that
> root lock contention still happens but only affects flows in the same
> HTB. Did I understand the root lock contention issue incorrectly for
> ifb? I do see some comments in __dev_queue_xmit() about using a
> different code path for software devices which bypasses
> __dev_xmit_skb(). Does this mean ifb won't go through
> __dev_xmit_skb()?
You can install HTB on all of your MQ children for sure.
Again, there is no qdisc lock contention if you properly use MQ.
Now if you _need_ to install a single qdisc for whatever reason, then
maybe you want to use a single rx queue on the NIC, to reduce lock
contention ;)
Powered by blists - more mailing lists