[Cake] some comprehensive arm64 w/cake results

David P. Reed dpreed at deepplum.com
Sun Oct 15 16:29:52 EDT 2023


60K pings per second? Well, that's probably fast enough for Cake work..., but I'm sure you can do a LOT better... Try AF_XDP and/or DPDK. I think AF_XDP works on ARM.

https://adarsh-kumar-phe15.medium.com/receiving-14-million-network-packets-per-second-a9d5cc1408b6

Now admittedly, my datacenter networking work is focused on single-digit microsecond RTT protocols (and doing them in Linux). But we really need to get clear on what "fast" means in modern computers. It does bug me that the folks working on network performance are still focused as if networks have to be slow.

The same problems can be found throughout the Linux kernel, where assumptions still seem to be holding on to what worked in Linus's original PC (single core, slow rotating disks, ...). I recently found a comment (in the disk page swap code) where the idea that disk cylinders are fast, but seeks are slow, is implicit in the design. It's the world's most "modern" "legacy system" - with lots of design decisions that make no sense anymore, but can't be undone.

Of course, Internet congestion control, in general, is still stuck in the original Van Jacobsen sawtooth era. My guess is it won't get fixed, though I applaud Cake, and despair the hardware folks who keep adding buffers.


On Sunday, October 15, 2023 12:24pm, "dave seddon via Cake" <cake at lists.bufferbloat.net> said:

> _______________________________________________
> Cake mailing list
> Cake at lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/cake
> Oh thanks Sebastian.  I have irtt installed, but it looks like I need to
> start the server.   That's easy.  Doing it now.
> 
> ( Incidentally, I did write a golang based icmp pinger.  It can ping at
> very high rates: https://github.com/edgio/icmpengine.  Really should write
> one with rust using io_uring... )
> 
> 
> 
> On Sun, Oct 15, 2023 at 8:53 AM Sebastian Moeller <moeller0 at gmx.de> wrote:
> 
>> If I recall correctly, flent will use irtt for its delay probes if
>> available on both ends. Sure fixing fping seems like a good thing longer
>> term, but to get data in quickly, maybe try irtt instead?
>>
>>
>> On 15 October 2023 17:11:23 CEST, dave seddon via Cake <
>> cake at lists.bufferbloat.net> wrote:
>>
>>> G'day,
>>>
>>> I've put more work into a test framework around the qdisc tests, but
>>> unfortunately flent doesn't work easily with Ubuntu LTS (
>>> https://github.com/tohojo/flent/issues/232, which I think is an issue
>>> with flent parsing the fping output ).
>>>
>>> Results and graphs in this sheet:
>>>
>>> https://docs.google.com/spreadsheets/d/1T59QwEdNwJFm4TgDFA_NY98gicOm8ABXKvDsSIMz9ag/edit#gid=1203641125
>>>
>>> Raw results of x2 test runs are here:
>>>
>>> https://github.com/randomizedcoder/qdisc_results/blob/main/qdisc/report.csv
>>>
>>> Each run:
>>>
>>> https://github.com/randomizedcoder/qdisc_results/blob/main/qdisc/2023-10-13T18%3A45%3A45/report.csv
>>>
>>> https://github.com/randomizedcoder/qdisc_results/blob/main/qdisc/2023-10-14T14%3A22%3A53/report.csv
>>>
>>> Full iperf outputs are available too, for example:
>>> https://github.com/randomizedcoder/qdisc_results/blob/main/qdisc/2023-10-13T18%3A45%3A45/nanopi-r2s/fq_codel/iperf/test/16_iperf/stdout
>>>
>>>
>>> Logs for each run are also available, for example:
>>> https://github.com/randomizedcoder/qdisc_results/blob/main/qdisc/2023-10-13T18%3A45%3A45/log.json
>>>
>>> The code repo updated here: https://github.com/randomizedcoder/cake ,
>>> with thehttps://github.com/randomizedcoder/cake/blob/main/README.md
>>> which explains how the test work.
>>> Updated google doc is started here:
>>> https://docs.google.com/document/d/1fYKj3BS89aB9drg_DsSq289xSdVQhn1zUJYCj0WuCs0/edit?usp=sharing
>>>
>>> Based on the questions on this list earlier, there is a folder with
>>> device information for each of the devices
>>> https://github.com/randomizedcoder/cake/tree/main/device_info
>>>
>>> For example, the Pi4 and the Lichee Pi (risc-v) hardware layout is here:
>>> -
>>> https://github.com/randomizedcoder/cake/blob/main/device_info/pi4/hwloc-ls-pi4.png
>>>
>>> -
>>> https://github.com/randomizedcoder/cake/blob/main/device_info/lpi4a/hwloc-ls-lpi4a.png
>>>
>>> The switch has also been upgraded to a Cisco 3750x, which I think based
>>> on the "show interface" output has a max queue size of 40 frames.  The test
>>> process clears the counters before each test and gathers the "show
>>> interface" output at the end.
>>>
>>> The Lichee Pi 4A doesn't look good (
>>> https://wiki.sipeed.com/hardware/en/lichee/th1520/lp4a.html )
>>>
>>> [image: image.png]
>>> I really wish the flent was working, so I'll probably see if I can work
>>> out the parsing.
>>>
>>> Thanks,
>>> Dave Seddon
>>>
>>> On Fri, Oct 13, 2023 at 10:25 AM dave seddon <dave.seddon.ca at gmail.com>
>>> wrote:
>>>
>>>> My bad.  There's a bug for this.... Looks like I have to downgrade fping
>>>>
>>>> https://github.com/tohojo/flent/issues/232
>>>> https://github.com/schweikert/fping/issues/203
>>>>
>>>> On Fri, Oct 13, 2023 at 8:59 AM dave seddon <dave.seddon.ca at gmail.com>
>>>> wrote:
>>>>
>>>>> G'day,
>>>>>
>>>>> I've been working away on automation of the tests.  Pretty close to
>>>>> having much nicer tests with a lot more details.  I've also got the risc-v
>>>>> device working.
>>>>>
>>>>> However, I've run into something funny with flent.  Flent is not happy
>>>>> with fping or ping.
>>>>>
>>>>> das at 3rd:~/Downloads/cake/cmd/run_qdiscs_tests$ /usr/bin/sudo
>>>>> /usr/sbin/ip netns exec network101 /usr/bin/flent rrul --output
>>>>>  /tmp/qdisc/2023-10-13T15:53:21/pi4/noqueue/flent/test/15_flent/flent_pi4_noqueue.png
>>>>> --data-dir /tmp/qdisc/2023-10-13T15:53:21/pi4/noqueue/flent/test/15_flent/
>>>>> --format summary --plot all_scaled --title-extra
>>>>> 2023-10-13T15:53:21_pi4_noqueue --note 2023-10-13T15:53:21_pi4_noqueue
>>>>> --extended-metadata --host 172.17.51.10 --length 60 --ipv4 --socket-stats
>>>>> Starting Flent 2.0.1 using Python 3.10.12.
>>>>> Starting rrul test. Expected run time: 70 seconds.
>>>>> WARNING: Found fping, but couldn't parse its output. Not
>>>>> using.              <---------------- ???
>>>>> ERROR: Runner Ping (ms) ICMP failed check: Cannot parse output of the
>>>>> system ping binary (/usr/bin/ping). Please install fping v3.5+.    <----- ??
>>>>>
>>>>> das at 3rd:~/Downloads/cake/cmd/run_qdiscs_tests$ dpkg --list | grep ping
>>>>> ii  fping                                 5.1-1
>>>>>           amd64        sends ICMP ECHO_REQUEST packets to network hosts
>>>>> ii  iputils-ping                          3:20211215-1
>>>>>            amd64        Tools to test the reachability of network hosts
>>>>> ii  kpartx                                0.8.8-1ubuntu1.22.04.1
>>>>>            amd64        create device mappings for partitions
>>>>> ii  libharfbuzz0b:amd64                   2.7.4-1ubuntu3.1
>>>>>            amd64        OpenType text shaping engine (shared library)
>>>>> das at 3rd:~/Downloads/cake/cmd/run_qdiscs_tests$ fping --version
>>>>> fping: Version 5.1
>>>>> das at 3rd:~/Downloads/cake/cmd/run_qdiscs_tests$ ping -V
>>>>> ping from iputils 20211215
>>>>>
>>>>> das at 3rd:~/Downloads/cake/cmd/run_qdiscs_tests$ cat /etc/lsb-release
>>>>> DISTRIB_ID=Ubuntu
>>>>> DISTRIB_RELEASE=22.04
>>>>> DISTRIB_CODENAME=jammy
>>>>> DISTRIB_DESCRIPTION="Ubuntu 22.04.3 LTS"
>>>>>
>>>>> I did install via "apt install fping"
>>>>>
>>>>> Any thoughts please?
>>>>>
>>>>> Kind regards,
>>>>> Dave
>>>>>
>>>>> On Thu, Sep 28, 2023 at 6:27 AM Sebastian Moeller via Cake <
>>>>> cake at lists.bufferbloat.net> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> > On Sep 28, 2023, at 15:19, David Lang <david at lang.hm> wrote:
>>>>>> >
>>>>>> > On Thu, 28 Sep 2023, Sebastian Moeller via Cake wrote:
>>>>>> >
>>>>>> >> P.S.: I am tempted, but will likely wait until they are available
>>>>>> in quantity and hope that the street price comes down a bit before getting
>>>>>> one ;)
>>>>>> >
>>>>>> > They aren't available at all yet, and it's not clear when they will
>>>>>> be available.
>>>>>>
>>>>>>         The announcement was end of October, but I think I could
>>>>>> pre-order right now if I was feeling an urge. You are right though,
>>>>>> announced != available or delivered.
>>>>>>
>>>>>> Regards
>>>>>>         Sebastian
>>>>>>
>>>>>> P.S.: I have a pi400 in use as "desktop" for my oldest kid, this is
>>>>>> close to be actually generally usable, I would guess that changing a
>>>>>> potential p500 from the pi400's 4GB to 8 GB together with the other
>>>>>> imprivements the 5 brings might push it over the threshold into the truly
>>>>>> useful category. Which probably means that either a potential pi500 will
>>>>>> come late and probably with only 4 GB, but let's see how this works out now
>>>>>> that the supply situation is less problematic.
>>>>>> And I understand that there are other capable ARM based SoCs for
>>>>>> homerouter/desktop duty, I just happen ot have a soft spot for the
>>>>>> raspberry project ;)
>>>>>>
>>>>>> >
>>>>>> > David Lang
>>>>>>
>>>>>> _______________________________________________
>>>>>> Cake mailing list
>>>>>> Cake at lists.bufferbloat.net
>>>>>> https://lists.bufferbloat.net/listinfo/cake
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>> Dave Seddon
>>>>> +1 415 857 5102
>>>>>
>>>>
>>>>
>>>> --
>>>> Regards,
>>>> Dave Seddon
>>>> +1 415 857 5102
>>>>
>>>
>>> --
>> Sent from my Android device with K-9 Mail. Please excuse my brevity.
>>
> 
> 
> --
> Regards,
> Dave Seddon
> +1 415 857 5102
> 




More information about the Cake mailing list