Is USB3 ethernet connected to DMA controller on NanoPi R2S?
Posted: Tue Aug 04, 2020 10:02 am
If it is not connected to DMA controller, it may fail to receive or send packets while CPU cores are busy.
Power & Source of Big Ideas
https://www.friendlyelec.com/Forum/
https://www.friendlyelec.com/Forum/viewtopic.php?f=65&t=3207
Code: Select all
[ 5] 592.00-593.01 sec 111 MBytes 931 Mbits/sec 0 1.26 MBytes
[ 5] 593.01-594.00 sec 111 MBytes 938 Mbits/sec 0 1.26 MBytes
[ 5] 594.00-595.00 sec 112 MBytes 944 Mbits/sec 0 1.26 MBytes
[ 5] 595.00-596.00 sec 112 MBytes 943 Mbits/sec 0 1.26 MBytes
[ 5] 596.00-597.00 sec 111 MBytes 934 Mbits/sec 0 1.26 MBytes
[ 5] 597.00-598.00 sec 112 MBytes 944 Mbits/sec 0 1.26 MBytes
[ 5] 598.00-599.00 sec 112 MBytes 942 Mbits/sec 0 1.26 MBytes
[ 5] 599.00-600.00 sec 111 MBytes 935 Mbits/sec 0 1.26 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-600.00 sec 65.5 GBytes 937 Mbits/sec 0 sender
[ 5] 0.00-600.00 sec 65.5 GBytes 937 Mbits/sec receiver
Code: Select all
root@FriendlyWrt:~# bonnie\+\+ -d /mnt/scratch -u root
Using uid:0, gid:0.
Writing a byte at a time...done
Writing intelligently...done
Rewriting...done
Reading a byte at a time...done
Reading intelligently...done
start 'em...done...done...done...done...done...
Create files in sequential order...done.
Stat files in sequential order...done.
Delete files in sequential order...done.
Create files in random order...done.
Stat files in random order...done.
Delete files in random order...done.
Version 1.98 ------Sequential Output------ --Sequential Input- --Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Name:Size etc /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
2047M 185k 98 6038k 11 4941k 10 218k 50 23.2m 21 23.0 2
Latency 81245us 1455ms 3052ms 589ms 19787us 426ms
Version 1.98 ------Sequential Create------ --------Random Create--------
-Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 16384 99 +++++ +++ 16384 99 16384 99 +++++ +++ 16384 98
Latency 98473us 1575us 9785us 201ms 195us 134ms
1.98,1.98,,1,1596761107,2047M,,8192,5,185,98,6038,11,4941,10,218,50,23797,21,23.0,2,16,,,,,34,99,+++++,+++,230,99,31,99,+++++,+++,77,98,81245us,1455ms,3052ms,589ms,19787us,426ms,98473us,1575us,9785us,201ms,195us,134ms
Code: Select all
Date Download DownloadBytes Upload UploadBytes Latency
2020-08-07 17:42 43821 81669464 18841 33945824 11
2020-08-07 16:33 46365 86525600 18438 33097280 14
2020-08-07 16:14 46502 86837344 18990 33961757 11
2020-08-07 15:33 46448 86818744 18894 34040472 10
2020-08-07 15:32 46439 86657728 19016 33951445 11
poddmo wrote:
I tested it and was surprised to see that there was barely any impact when running an iperf3 test on the LAN ethernet adapter and running a bonnie++ test on a usb stick in the usb 2.0 type A socket, at the same time.
I'm happy to say I see no practical impact to the USB3 ethernet.
As for the thermals and noise of this little router, I'm still watching.. it definitely got hot, I think hotter than when I just ran stress on the cpu
Have you executed `ls` over ssh in a large folder during the stress tests?
Without DMA, the USB ethernet chipset's buffer would become full under stress and refuse more packets.
What happens to `ls` on an SSH session when both CPU and USB ethernet are busy?
Do you use R2S in a metal case?
poddmo wrote:
The iperf3 and bonnie test was with the usb stick formatted as fat32. I didn't try any further tests on the usb stick as my curiosity was for the impact on the LAN performance.