From: Dave Taht <dave.taht@gmail.com>
To: cake@lists.bufferbloat.net
Subject: [Cake] cake verses hardware multiqueue
Date: Sun, 12 Apr 2015 15:10:05 -0700 [thread overview]
Message-ID: <CAA93jw6982DWLB0_KiAhoZbrddjw9kk2BfA+fEZg4znO9f+vww@mail.gmail.com> (raw)
Nearly all the latest hardare has hardware multiqueue, which is
usually useful in gaining some benefit from natively fq-ing flows, but
also (due to the limited number of queues), tends to show severe
birthday problems.
Hardware multiqueue is also of benefit when
A) there is a mapping from the hardware queues to the cpus IRQ
handler(s) so they can be serviced in parallel.
B) when the queues can prioritize
It is generally unclear if hardware multiqueue on ethernet is
implemented as a priority queue of any sort. (it is on wifi, and
sorting out which better qdisc to select for each device type is a
longstanding issue)
It has been shown (old eric dumazet post) that we can often get better
results to have a single qdisc, rather than one per hardware queue, to
keep control of the BQL queues in the implementation, so long as the
single interrupt can be adaquately handled by one cpu.
C) Cake - at line rate - could spread it's diffserv markings across
the existing hardware queues also to get priority (if the hardware
queues supported that, rather than fairness.) This would mitigate a
bit against excessive BQL.
D) mvneta and the ethernet device in the rangeleys are both hardware
multiqueue. I believe the mvneta has 16 queues, and perhaps it would
be better to have one cake instance per cpu to drive those
multiqueues, instead. We would save on dcache, in particular.
E) Drivers could also specify a different qdisc at instantation time,
rather than the default from the sysctl, or mq + the default
sysctl. "cakemq"
--
Dave Täht
Open Networking needs **Open Source Hardware**
https://plus.google.com/u/0/+EricRaymond/posts/JqxCe2pFr67
reply other threads:[~2015-04-12 22:10 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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
List information: https://lists.bufferbloat.net/postorius/lists/cake.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAA93jw6982DWLB0_KiAhoZbrddjw9kk2BfA+fEZg4znO9f+vww@mail.gmail.com \
--to=dave.taht@gmail.com \
--cc=cake@lists.bufferbloat.net \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox