Hi @RadxaYuntian sure thing.
I will try to test everything as throughly as possible, so I will run some iperf3 tests from the following devices:
- My laptop
- Rockpi 4A+ which runs fine out of the box with default delayline settings
- Rockpi 4A+ which barely runs with default delayline settings
Laptop
First my laptop to get a baseline. This is iperf3 under Winows 11, and the 100 Mbit router isn’t that fast either.
iperf3 -c 172.16.2.1 -p 5000 -t 10
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 103 MBytes 86.2 Mbits/sec sender
[ 4] 0.00-10.00 sec 103 MBytes 86.1 Mbits/sec receiver
iperf3 -c 172.16.2.1 -p 5000 -t 10 -R
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 94.5 MBytes 79.3 Mbits/sec 0 sender
[ 4] 0.00-10.00 sec 94.5 MBytes 79.3 Mbits/sec receiver
Problematic RockPi 4A+
Using tx delayline: 0x28, rx delayline: 0x20
iperf3 -c 172.16.2.1 -p 5000 -t 10
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 98.8 MBytes 82.9 Mbits/sec 2 sender
[ 5] 0.00-10.02 sec 97.0 MBytes 81.2 Mbits/sec receiver
iperf3 -c 172.16.2.1 -p 5000 -t 10 -R
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.02 sec 89.2 MBytes 74.7 Mbits/sec 0 sender
[ 5] 0.00-10.00 sec 88.4 MBytes 74.2 Mbits/sec receiver
Using suggested tx delayline: 0x2a, rx delayline: 0x21
iperf3 -c 172.16.2.1 -p 5000 -t 10
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 101 MBytes 85.0 Mbits/sec 0 sender
[ 5] 0.00-10.02 sec 98.9 MBytes 82.8 Mbits/sec receiver
iperf3 -c 172.16.2.1 -p 5000 -t 10 -R
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.10 sec 92.5 MBytes 76.8 Mbits/sec 0 sender
[ 5] 0.00-10.00 sec 91.7 MBytes 76.9 Mbits/sec receiver
Speed seems to be slightly higher with the settings you mentioned.
RockPi 4A+ without problems
Just to verify that this device also works I ran a test on this RockPi as well.
Using the default tx delayline: 0x28, rx delayline: 0x11
iperf3 -c 172.16.6.1 -p 5000 -t 10
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 109 MBytes 91.7 Mbits/sec 0 sender
[ 5] 0.00-10.01 sec 107 MBytes 89.7 Mbits/sec receiver
iperf3 -c 172.16.6.1 -p 5000 -t 10 -R
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 90.6 MBytes 76.0 Mbits/sec 222 sender
[ 5] 0.00-10.00 sec 90.4 MBytes 75.9 Mbits/sec receiver
Using suggested tx delayline: 0x2a, rx delayline: 0x21
iperf3 -c 172.16.6.1 -p 5000 -t 10
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 110 MBytes 92.1 Mbits/sec 0 sender
[ 5] 0.00-10.02 sec 108 MBytes 90.5 Mbits/sec receiver
iperf3 -c 172.16.6.1 -p 5000 -t 10 -R
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 106 MBytes 89.2 Mbits/sec 0 sender
[ 5] 0.00-10.00 sec 106 MBytes 88.7 Mbits/sec receiver
Looks to me like the new values are beneficial for devices that don’t experience propblems.
Final thoughts
Both Rock devices were running with default cpu behaviour, using this image rock-pi-4a-plus_debian_bullseye_cli_b14.
The suggested values seem to be working for a problematic device and for a device that experienced no problems. In both cases the speed seemed to increase a little bit as well.
I can’t test the values on a Gigabit network right now. I would also need to increase the CPU speed on my rock to get to those speeds anyway and I don’t know how to do that on this image. If you can tell me how to do that I will test it later today.
Gigabit testing
I ran some iperf tests using my Gigabit network with 40 seconds per test. Still without adjusting CPU the results look good.
Using the default tx delayline: 0x28, rx delayline: 0x11
iperf3 -c 192.168.3.228 -p 5000 -t 40
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-40.00 sec 4.35 GBytes 933 Mbits/sec 0 sender
[ 5] 0.00-40.07 sec 4.35 GBytes 932 Mbits/sec receiver
iperf3 -c 192.168.3.228 -p 5000 -t 40 -R
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-40.04 sec 3.86 GBytes 827 Mbits/sec 0 sender
[ 5] 0.00-40.00 sec 3.85 GBytes 827 Mbits/sec receiver
Using suggested tx delayline: 0x2a, rx delayline: 0x21
iperf3 -c 192.168.3.228 -p 5000 -t 40
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-40.00 sec 4.35 GBytes 933 Mbits/sec 0 sender
[ 5] 0.00-40.07 sec 4.35 GBytes 932 Mbits/sec receiver
iperf3 -c 192.168.3.228 -p 5000 -t 40 -R
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-40.05 sec 3.92 GBytes 841 Mbits/sec 1 sender
[ 5] 0.00-40.00 sec 3.92 GBytes 841 Mbits/sec receiver
I think everyone can be happy with these settings!