freebsd-arm Digest, Vol 740, Issue 7 (Rock64 Ethernet testing)

Mark Millard marklmi at yahoo.com
Tue Jul 7 06:44:06 UTC 2020



On 2020-Jul-6, at 23:22, Mark Millard <marklmi at yahoo.com> wrote:

> On 2020-Jul-6, at 23:03, Mark Millard <marklmi at yahoo.com> wrote:
> 
> 
>> On 2020-Jul-6, at 14:21, Mark Millard <marklmi at yahoo.com> wrote:
>> 
>>> On 2020-Jul-6, at 13:47, Oleksandr Tymoshenko <gonzo at bluezbox.com> wrote:
>>> 
>>>> Furkan Salman (furkan at fkardame.com) wrote:
>>>>> Hello Peter,
>>>>> 
>>>>> I have rockpiE which is somewhat similar to Rock64, If s133pwa1k9r@ or gonzo@ can confirm if rockpie can be used to test RK3328 Lan issue then I am happy to help with testing.
>>>> 
>>>> 
>>>> Hi Furkan,
>>>> 
>>>> Yes, RockPi E seems to be a good test target. If you could check the
>>>> GigE interface before and after the patch. Whether it works/doesn't work
>>>> and if it works in both cases - try testing performance with iperf3,
>>>> just to see if performance was affected in any way.
>>> 
>>> For folks not familiar with the general type of activity
>>> or specifically with iperf3 (or other specifics), more
>>> detailed information to "collect and report . . ., collecting
>>> the information via the commands .  . ." could help: more
>>> step-by-step.
>>> 
>>> Also: Do you care between debug kernels vs. non-debug
>>> kernels? Debug ones of the appropriate vintage for head
>>> are available via artifacts.ci.freebsd.org but there
>>> might be performance consequences to using such.
>> 
>> I put a copy of the -r362982 *debug* kernel from
>> artifacts.ci.freebsd.org on the Rock64 V2.0 that
>> I sometimes have access to. There are no hardware
>> mods to the Rock64 V2.0.
>> 
>> It did DHCP to pick up an address just fine during
>> the boot. I ssh'd into it just fine after the boot.
>> 
>> # uname -apKU
>> FreeBSD Rock64orRPi4 13.0-CURRENT FreeBSD 13.0-CURRENT #0 r362982: Tue Jul  7 03:41:02 UTC 2020     root at FreeBSD-head-aarch64-build.jail.ci.FreeBSD.org:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC  arm64 aarch64 1300100 1300092
>> 
>> # ifconfig
>> dwc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>>       options=80008<VLAN_MTU,LINKSTATE>
>>       ether #
>>       hwaddr #
>>       inet # netmask # broadcast #
>>       media: Ethernet autoselect (1000baseT <full-duplex>)
>>       status: active
>>       nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>> . . .
>> 
>> I'll note that the Rock64 is the only thing running a debug
>> kernel for this note.
>> 
>> An rsync copying an approximately 4 GiByte tar file to the Rock64
>> reported:
>> 
>> # rsync -axHh --info=progress2 --delete -r /usr/obj/clang-cortexA53-installworld-poud.tar X at Y:/tmp/
>> 
>>         4.01G 100%   28.91MB/s    0:02:12 (xfr#1, to-chk=0/1)
>> 
>> I'll note that at times it listed over 32MB/s. The storage media
>> is a USB3 SSD plugged into the USB3 port. It has the Rock64's
>> root filesystem.
>> 
>> For reference, locally duplicating the file on the Rock64 via
>> rsync reported:
>> 
>> # rsync -axHh --info=progress2 -r /tmp/clang-cortexA53-installworld-poud.tar /tmp/mmjnk.tar
>>         4.01G 100%   38.48MB/s    0:01:39 (xfr#1, to-chk=0/1)
>> 
>> (from/to: same media). I do not expect that the rsync over the
>> network was limited by the target media on the Rock64.
>> 
>> Copying from the same machine to a large, fast machine instead
>> of to the Rock64:
>> 
>> # rsync -axHh --info=progress2 --delete -r /usr/obj/clang-cortexA53-installworld-poud.tar X at Y:/tmp/
>>         4.01G 100%   77.32MB/s    0:00:49 (xfr#1, to-chk=0/1)
>> 
>> So that should not be the side constraining the to-Rock64
>> rate.
>> 
>> Copying from the Rock64 to the large, fast machine:
>> 
>> rsync -axHh --info=progress2 --delete -r /tmp/clang-cortexA53-installworld-poud.tar X at Y:/tmp/
>>         4.01G 100%   21.35MB/s    0:02:59 (xfr#1, to-chk=0/1)
>> 
>> It did not list figures much higher than above, so slower than
>> the copy to the Rock64 fairly generally.
>> 
>> All this activity is over the local network, nothing remote.
>> All machines were running head -r360311 (non-debug), except
>> for the Rock64 having the -r362982 *debug* kernel instead. 
>> 
>> I hope that the above helps.
>> 
>> I see that there are now iperf3 usage instructions so at some
>> point I may get that going and report the results, including
>> doing a non-debug kernel build and install.
>> 
> 
> Still using the debug kernel, but I figured I'd show
> the results from proving that I can get iperf3 to do
> the requested type of testing:
> 
> # iperf3 -c 192.168.1.122
> Connecting to host 192.168.1.122, port 5201
> [  5] local 192.168.1.109 port 17015 connected to 192.168.1.122 port 5201
> [ ID] Interval           Transfer     Bitrate         Retr  Cwnd
> [  5]   0.00-1.00   sec  45.4 MBytes   381 Mbits/sec    0    730 KBytes       
> [  5]   1.00-2.00   sec  45.4 MBytes   380 Mbits/sec    0    730 KBytes       
> [  5]   2.00-3.00   sec  44.9 MBytes   376 Mbits/sec    0    730 KBytes       
> [  5]   3.00-4.00   sec  45.3 MBytes   380 Mbits/sec    0    730 KBytes       
> [  5]   4.00-5.00   sec  44.7 MBytes   375 Mbits/sec    0    730 KBytes       
> [  5]   5.00-6.00   sec  45.2 MBytes   378 Mbits/sec    0    730 KBytes       
> [  5]   6.00-7.00   sec  44.7 MBytes   376 Mbits/sec    0    730 KBytes       
> [  5]   7.00-8.00   sec  44.6 MBytes   374 Mbits/sec    0    730 KBytes       
> [  5]   8.00-9.00   sec  44.7 MBytes   375 Mbits/sec    0    730 KBytes       
> [  5]   9.00-10.00  sec  45.3 MBytes   380 Mbits/sec    0    730 KBytes       
> - - - - - - - - - - - - - - - - - - - - - - - - -
> [ ID] Interval           Transfer     Bitrate         Retr
> [  5]   0.00-10.00  sec   450 MBytes   377 Mbits/sec    0             sender
> [  5]   0.00-10.62  sec   450 MBytes   355 Mbits/sec                  receiver
> 
> # iperf3 -R -c 192.168.1.122
> Connecting to host 192.168.1.122, port 5201
> Reverse mode, remote host 192.168.1.122 is sending
> [  5] local 192.168.1.109 port 54738 connected to 192.168.1.122 port 5201
> [ ID] Interval           Transfer     Bitrate
> [  5]   0.00-1.00   sec  61.4 MBytes   515 Mbits/sec                  
> [  5]   1.00-2.00   sec  61.3 MBytes   514 Mbits/sec                  
> [  5]   2.00-3.00   sec  61.3 MBytes   515 Mbits/sec                  
> [  5]   3.00-4.00   sec  61.4 MBytes   515 Mbits/sec                  
> [  5]   4.00-5.00   sec  61.4 MBytes   515 Mbits/sec                  
> [  5]   5.00-6.00   sec  61.2 MBytes   513 Mbits/sec                  
> [  5]   6.00-7.00   sec  61.4 MBytes   515 Mbits/sec                  
> [  5]   7.00-8.00   sec  61.3 MBytes   514 Mbits/sec                  
> [  5]   8.00-9.00   sec  61.4 MBytes   515 Mbits/sec                  
> [  5]   9.00-10.00  sec  61.3 MBytes   514 Mbits/sec                  
> - - - - - - - - - - - - - - - - - - - - - - - - -
> [ ID] Interval           Transfer     Bitrate         Retr
> [  5]   0.00-10.61  sec   614 MBytes   486 Mbits/sec   28             sender
> [  5]   0.00-10.00  sec   613 MBytes   515 Mbits/sec                  receiver
> 
> I'll note that I run with the following in /etc/sysctl.conf :
> 
> # The Rock64 does not seem to automatically adjust from 600MHz,
> # so do so manually. (The specifics likely would not be
> # appropriate to the RPi4/3.)
> dev.cpu.0.freq=1200
> 
> It is a historical artifact that I've not checked on the
> status of in a very long time: it works so I leave it
> there.

Looks like it will be some time before I deal with
updating to a more modern kernel/world (non-debug).

But I switched back to my non-debug head -r360311
kernel (and dtb) build and here are the iperf3
results for that context:

# iperf3 -c 192.168.1.122
Connecting to host 192.168.1.122, port 5201
[  5] local 192.168.1.109 port 39541 connected to 192.168.1.122 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  73.6 MBytes   617 Mbits/sec    0   1.07 MBytes       
[  5]   1.00-2.00   sec  72.9 MBytes   612 Mbits/sec    0   1.60 MBytes       
[  5]   2.00-3.00   sec  72.9 MBytes   611 Mbits/sec    0   1.60 MBytes       
[  5]   3.00-4.00   sec  72.8 MBytes   611 Mbits/sec    0   1.60 MBytes       
[  5]   4.00-5.00   sec  72.9 MBytes   611 Mbits/sec    0   1.60 MBytes       
[  5]   5.00-6.00   sec  72.9 MBytes   611 Mbits/sec    0   1.60 MBytes       
[  5]   6.00-7.00   sec  72.7 MBytes   610 Mbits/sec    0   1.60 MBytes       
[  5]   7.00-8.00   sec  72.8 MBytes   610 Mbits/sec    0   1.60 MBytes       
[  5]   8.00-9.00   sec  72.8 MBytes   611 Mbits/sec    0   1.60 MBytes       
[  5]   9.00-10.00  sec  72.8 MBytes   610 Mbits/sec    0   1.60 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   729 MBytes   611 Mbits/sec    0             sender
[  5]   0.00-10.32  sec   729 MBytes   593 Mbits/sec                  receiver

# iperf3 -R -c 192.168.1.122
Connecting to host 192.168.1.122, port 5201
Reverse mode, remote host 192.168.1.122 is sending
[  5] local 192.168.1.109 port 50696 connected to 192.168.1.122 port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec   112 MBytes   941 Mbits/sec                  
[  5]   1.00-2.00   sec   112 MBytes   942 Mbits/sec                  
[  5]   2.00-3.00   sec   112 MBytes   941 Mbits/sec                  
[  5]   3.00-4.00   sec  84.4 MBytes   708 Mbits/sec                  
[  5]   4.00-5.00   sec   112 MBytes   941 Mbits/sec                  
[  5]   5.00-6.00   sec   112 MBytes   941 Mbits/sec                  
[  5]   6.00-7.00   sec   112 MBytes   941 Mbits/sec                  
[  5]   7.00-8.00   sec   112 MBytes   941 Mbits/sec                  
[  5]   8.00-9.00   sec   112 MBytes   941 Mbits/sec                  
[  5]   9.00-10.00  sec   112 MBytes   941 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.31  sec  1.07 GBytes   892 Mbits/sec   55             sender
[  5]   0.00-10.00  sec  1.07 GBytes   918 Mbits/sec                  receiver


===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-arm mailing list