From: Jamal Hadi Salim <jhs@mojatatu.com>
To: Jesper Dangaard Brouer <brouer@redhat.com>,
netdev@vger.kernel.org, "David S. Miller" <davem@davemloft.net>,
Tom Herbert <therbert@google.com>,
Eric Dumazet <eric.dumazet@gmail.com>,
Hannes Frederic Sowa <hannes@stressinduktion.org>,
Florian Westphal <fw@strlen.de>,
Daniel Borkmann <dborkman@redhat.com>
Cc: Alexander Duyck <alexander.duyck@gmail.com>,
John Fastabend <john.r.fastabend@intel.com>,
Dave Taht <dave.taht@gmail.com>,
toke@toke.dk
Subject: Re: [net-next PATCH V5] qdisc: bulk dequeue support for qdiscs with TCQ_F_ONETXQUEUE
Date: Tue, 30 Sep 2014 07:07:37 -0400 [thread overview]
Message-ID: <542A8EF9.10403@mojatatu.com> (raw)
In-Reply-To: <20140930085114.24043.81310.stgit@dragon>
On 09/30/14 04:53, Jesper Dangaard Brouer wrote:
[..]
> To avoid overshooting the HW limits, which results in requeuing, the
> patch limits the amount of bytes dequeued, based on the drivers BQL
> limits. In-effect bulking will only happen for BQL enabled drivers.
> Besides the bytelimit from BQL, also limit bulking to maximum 7
> packets to avoid any issues with available descriptor in HW and
> any HoL issues measured at 100Mbit/s.
>
[..]
>
> The measured perf diff benefit (at 10Gbit/s) for TCP_STREAM were 4.66%
> less CPU used on calls to _raw_spin_lock() (mostly from sch_direct_xmit).
>
> Tool mpstat, while stressing the system with netperf 24x TCP_STREAM, shows:
> * Disabled bulking: 8.30% soft 88.75% idle
> * Enabled bulking: 7.80% soft 89.36% idle
>
I know you have put a lot of hard work here and i hate to do
this to you, but:
The base test case is to surely *not to allow* the bulk code to be
executed at all. i.e when you say "disabled bulking" it
should mean not calling qdisc_may_bulk or qdisc_avail_bulklimit()
because that code was not there initially. My gut feeling is you
will find that your numbers for "Disabled bulking" to be a lot lower
than you show.
This is because no congestion likely happens at 24x TCP_STREAM
running at 10G with a modern day cpu and therefore you will end up
consuming more cpu.
Note, there are benefits as you have shown - but i would not
consider those to be standard use cases (actully one which would
have shown clear win is the VM thing Rusty was after). For this reason
my view is that i should be able to disable via ifdef bulking (yes, I
know DaveM hates ifdefs ;->).
cheers,
jamal
next prev parent reply other threads:[~2014-09-30 11:07 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-30 8:53 [net-next PATCH V5] qdisc: bulk dequeue support for qdiscs with TCQ_F_ONETXQUEUE Jesper Dangaard Brouer
2014-09-30 11:07 ` Jamal Hadi Salim [this message]
2014-09-30 18:20 ` David Miller
2014-10-01 13:17 ` Jamal Hadi Salim
2014-10-01 14:55 ` Tom Herbert
2014-10-01 15:34 ` Jamal Hadi Salim
2014-10-01 17:28 ` Jesper Dangaard Brouer
2014-10-01 18:55 ` Jamal Hadi Salim
2014-10-01 19:47 ` Jesper Dangaard Brouer
2014-10-01 20:05 ` Jamal Hadi Salim
2014-10-01 20:32 ` Jesper Dangaard Brouer
2014-10-02 5:18 ` Dave Taht
2014-10-02 7:44 ` Jesper Dangaard Brouer
2014-10-02 10:08 ` Toke Høiland-Jørgensen
2014-10-02 13:02 ` Jamal Hadi Salim
2014-10-02 12:53 ` Jamal Hadi Salim
2014-10-01 19:47 ` David Miller
2014-09-30 11:48 ` Eric Dumazet
2014-09-30 12:25 ` Florian Westphal
2014-09-30 12:38 ` Eric Dumazet
2014-09-30 12:41 ` Florian Westphal
2014-09-30 22:07 ` Jesper Dangaard Brouer
2014-09-30 22:15 ` Eric Dumazet
2014-09-30 12:34 ` Eric Dumazet
2014-09-30 12:51 ` [net-next PATCH] dql: add a burst attribute Eric Dumazet
2014-09-30 13:46 ` Florian Westphal
2014-09-30 14:17 ` Eric Dumazet
2014-09-30 14:26 ` Tom Herbert
2014-09-30 14:49 ` Eric Dumazet
2014-09-30 15:05 ` Tom Herbert
2014-09-30 14:31 ` Florian Westphal
2014-09-30 14:55 ` Eric Dumazet
2014-09-30 21:46 ` Jesper Dangaard Brouer
2014-10-01 4:44 ` Tom Herbert
2014-09-30 15:26 ` Florian Westphal
2014-09-30 15:39 ` Dave Taht
2014-09-30 15:41 ` Eric Dumazet
2014-09-30 21:29 ` Jesper Dangaard Brouer
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=542A8EF9.10403@mojatatu.com \
--to=jhs@mojatatu.com \
--cc=alexander.duyck@gmail.com \
--cc=brouer@redhat.com \
--cc=dave.taht@gmail.com \
--cc=davem@davemloft.net \
--cc=dborkman@redhat.com \
--cc=eric.dumazet@gmail.com \
--cc=fw@strlen.de \
--cc=hannes@stressinduktion.org \
--cc=john.r.fastabend@intel.com \
--cc=netdev@vger.kernel.org \
--cc=therbert@google.com \
--cc=toke@toke.dk \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.