From: Jim Gettys <jg@freedesktop.org>
To: Mikael Abrahamsson <swmike@swm.pp.se>
Cc: Eric Dumazet <edumazet@google.com>,
tsv-area@ietf.org, bloat <bloat@lists.bufferbloat.net>,
aqm@ietf.org
Subject: [Bloat] Flow queuing performance (was: Re: [tsvwg] New Version Notification for draft-baker-tsvwg-aqm-recommendation-00.txt)
Date: Sun, 17 Mar 2013 15:12:16 -0400 [thread overview]
Message-ID: <CAGhGL2BdnhRB0kz_AXb9X9=ph3016ODKDc_9kNm5wgO215NCTg@mail.gmail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 2182 bytes --]
To begin with, I tend to use the term 'flow queuing' to distinguish what
we're doing with classic "fair queuing", which is overbound in most
people's minds, and some of what we do is "unfair" by some metrics.
Secondly, an extremely important factoid about why we got so excited about
fq_codel (which is really DRR, in term derived from SFQ, combined with
CoDel along with detecting thin vs. thick flows) is its performance:
If my memory serves me correctly, Eric Dumazet has bench marked fq_codel,
when running on a modern x86 processor with modern NIC's only takes a few
percent of one x86 core at a 10gE rate. And we get higher total bandwidth
over the link as a result. Eric, please correct me if I'm wrong, but you
did say I could quote you!
Similarly, Dave Taht reports when using fq_codel on CeroWrt (a 600mhz MIPS
commodity home router), while the cost of running the fq_codel algorithm is
visible in the performance traces, it's well down the list of what
functions in Linux are taking the CPU time on that architecture, with huge
latency benefits.
As a result, at the last Linux Plumber's Conference in August, there was
general consensus that we could replace PFIFO_FAST as the default qdisc in
Linux, awaiting just our confidence that fq_codel (or something very
similar) was mature enough for such a step.
These two results demonstrated that on current general purpose
architectures, an algorithm such as fq_codel is really do-able for the edge
of the Internet.
That is not the same statement as saying you can turn on existing
implementations of various other fair queuing algorithms in existing big
routers or not; just that on general purpose processors we know we can do
with these algorithms immediately.
I think we all need to reset our expectations from the 1990's where we took
away the impression that SFQ/DRR etc were too expensive for deployment:
today's general purpose systems are very different than those we had in
that era, now often dominated by cache misses more than anything else.
Everything we think we know about performance needs to be revisited in the
light of modern architectures.
Best regards,
- JIm
[-- Attachment #2: Type: text/html, Size: 2377 bytes --]
next reply other threads:[~2013-03-17 19:12 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-17 19:12 Jim Gettys [this message]
2013-03-17 19:24 ` Stephen Hemminger
2013-03-17 19:32 ` Eric Dumazet
2013-03-18 4:30 ` Mikael Abrahamsson
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/bloat.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAGhGL2BdnhRB0kz_AXb9X9=ph3016ODKDc_9kNm5wgO215NCTg@mail.gmail.com' \
--to=jg@freedesktop.org \
--cc=aqm@ietf.org \
--cc=bloat@lists.bufferbloat.net \
--cc=edumazet@google.com \
--cc=swmike@swm.pp.se \
--cc=tsv-area@ietf.org \
/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