Cake - FQ_codel the next generation
 help / color / mirror / Atom feed
From: Jonathan Morton <chromatix99@gmail.com>
To: Benjamin Cronce <bcronce@gmail.com>
Cc: Dave Taht <dave.taht@gmail.com>,
	"cake@lists.bufferbloat.net" <cake@lists.bufferbloat.net>,
	Eric Luehrsen <ericluehrsen@hotmail.com>
Subject: Re: [Cake] [LEDE-DEV] Cake SQM killing my DIR-860L - was: [17.01] Kernel: bump to 4.4.51
Date: Mon, 6 Mar 2017 20:46:06 +0200	[thread overview]
Message-ID: <47EFC233-D13B-4D26-945B-70D11DCC0BCC@gmail.com> (raw)
In-Reply-To: <CAJ_ENFF4jgjwo+1or8OMesH4j8UAHob9mOh+DEMP0X_a9+6GAw@mail.gmail.com>


> On 6 Mar, 2017, at 20:08, Benjamin Cronce <bcronce@gmail.com> wrote:
> 
> Depends on how short of a timescale you're talking about. Shared global state that is being read and written to very quickly by multiple threads is bad enough for a single package system, but when you start getting to something like an AMD Ryzen or NUMA, shared global state becomes really expensive. Accuracy is expensive. Loosen the accuracy and gain scalability.

I’m talking about timer event latency timescales, so approx 1ms on Linux.  The deficit-mode shaper automatically and naturally adapts to whatever timer latency is actually experienced.  A token-bucket shaper has to be configured in advance with a burst size, which it uses whether or not it is warranted to do so.

The effects are measurable on single TCP flows at 20Mbps (so slightly more than 1Kpps peak), as they modify Codel’s behaviour.  Cake achieves higher average throughput than HTB+fq_codel with its more accurate shaping, because Codel isn’t forced into overcorrecting after accepting several sub-bucket bursts in sequence.

Anyway, these are concerns I would want to go away and think about for a while, before committing to a design.  That’s precisely why I don’t have mental bandwidth for it right now.

 - Jonathan Morton


      reply	other threads:[~2017-03-06 18:46 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <e955b05f85fea5661cfe306be0a28250@inventati.org>
     [not found] ` <07479F0A-40DD-44E5-B67E-28117C7CF228@gmx.de>
     [not found]   ` <1488400107.3610.1@smtp.autistici.org>
     [not found]     ` <2B251BF1-C965-444D-A831-9981861E453E@gmx.de>
     [not found]       ` <1488484262.16753.0@smtp.autistici.org>
2017-03-02 21:10         ` Dave Täht
2017-03-02 23:16           ` John Yates
2017-03-03  0:00             ` Jonathan Morton
2017-03-02 23:55           ` John Yates
2017-03-03  0:02             ` Jonathan Morton
2017-03-03  4:31               ` Eric Luehrsen
2017-03-03  4:35                 ` Jonathan Morton
2017-03-03  5:00                   ` Eric Luehrsen
2017-03-03  5:49                     ` Jonathan Morton
2017-03-03  6:21                       ` Dave Taht
2017-03-06 13:30                         ` Benjamin Cronce
2017-03-06 14:44                           ` Jonathan Morton
2017-03-06 18:08                             ` Benjamin Cronce
2017-03-06 18:46                               ` Jonathan Morton [this message]

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=47EFC233-D13B-4D26-945B-70D11DCC0BCC@gmail.com \
    --to=chromatix99@gmail.com \
    --cc=bcronce@gmail.com \
    --cc=cake@lists.bufferbloat.net \
    --cc=dave.taht@gmail.com \
    --cc=ericluehrsen@hotmail.com \
    /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