[Cake] Cake latency update

Pete Heist peteheist at gmail.com
Fri Feb 10 04:21:35 EST 2017


> On Feb 10, 2017, at 9:49 AM, Jonathan Morton <chromatix99 at gmail.com> wrote:
> 
> 
>> On 10 Feb, 2017, at 10:04, Pete Heist <peteheist at gmail.com> wrote:
>> 
>> I look forward to the throughput shifts being solved, where I see results like this:
>> 
>> http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_100ms_80mbit/index.html
> 
> That basically looks like it’s run out of CPU, so there’s hard choices to make over CPU allocation.  Cake isn’t responsible for that allocation, though it *might* be possible to optimise its use of the CPU a little further.
> 
> If you can obtain a CPU profile of that workload on that hardware, that might help to direct those efforts.
> 
> - Jonathan Morton

I’d be surprised if that were a CPU problem in this case, as that test was run with Cake on a 2.4 GHz Core 2 Duo, not so new, but far more powerful than a typical embedded CPU. Here’s the CPU info:

http://www.drhleny.cz/bufferbloat/hostinfo/mbp_cpuinfo.txt <http://www.drhleny.cz/bufferbloat/hostinfo/mbp_cpuinfo.txt>

Here are the results at various bitrates (all half-duplex rate limiting on this CPU). I find it easiest to just open them in multiple browser tabs and keyboard shift between them to compare:

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_10mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_10mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_20mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_20mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_30mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_30mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_40mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_40mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_50mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_50mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_60mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_60mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_70mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_70mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_75mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_75mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_80mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_80mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_85mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_85mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_90mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_90mbit/index.html>

http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_100mbit/index.html <http://www.drhleny.cz/bufferbloat/cake_hd-eth-ap_100mbit/index.html>

There are strange shifts at 30 Mbit, 40 Mbit and 70 Mbit, but I think this hardware should be able to handle those speeds. It’s interesting that the throughput shifts don’t seem to affect the latency.

Compare that to the results for HTB+fq_codel, which doesn’t show such shifts:

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_10mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_10mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_20mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_20mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_30mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_30mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_40mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_40mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_50mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_50mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_60mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_60mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_70mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_70mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_75mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_75mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_80mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_80mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_85mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_85mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_90mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_90mbit/index.html>

http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_100mbit/index.html <http://www.drhleny.cz/bufferbloat/fq_codel_hd-eth-ap_100mbit/index.html>

But if you still think that could be the CPU, I can try to get a CPU profile, if you can direct me on how to do that for Cake…

Pete

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.bufferbloat.net/pipermail/cake/attachments/20170210/1e7d17da/attachment.html>


More information about the Cake mailing list