Erratic Performance WiFi Benchmark
This is the same benchmark used to measure LAN performance with details and results above in:
viewtopic-p-8216274.html#8216274
As a reminder, the benchmark measures performance of large files, random access and small files. Below is an example of logged performance. Later are comparisons of the individual test functions, using the older Pi 3B and the newer 3B+, both via Raspbian (32 bits) and Gentoo (64 bits), accessing an AMD CPU based PC with Windows 7 and one with an Intel Core i7, dual booted to Windows 10 or Linux Ubuntu. Performance initiated from the PCs was also measured from a similar Linux/Intel benchmark and Windows EXE files stored in a Raspberry Pi directory (after Samba installation).
Code: Select all
================ 3B to Win 7 ================
LanSpeed RasPi 1.0 Wed May 16 15:58:08 2018
MBytes/Second
MB Write1 Write2 Write3 Read1 Read2 Read3
8 4.67 4.71 4.80 5.78 5.31 5.37
16 4.65 4.90 4.91 5.77 6.39 6.39
Random Read Write
From MB 4 8 16 4 8 16
msecs 3.009 3.346 3.633 3.90 3.67 3.65
200 Files Write Read Delete
File KB 4 8 16 4 8 16 secs
MB/sec 0.27 0.48 0.86 0.32 0.55 0.96
ms/file 15.22 16.98 19.09 12.95 14.80 17.08 2.769
Initial results were disappointing, using Gentoo and the 3B+, some being slightly faster than those run on the old 3B, both being typical 2.4 GHz WiFi speeds seen on other benchmarks. Then, I checked my BT Smart Hub and found that it has dual 2.4 and 5 GHz capabilities, with the latter being identified on one of my mobile phones. I moved the Pi to the same room as the hub, when some speeds appeared to be at 5 GHz level (as shown below). Following the next boot they were slow again. On another occasion, full speed was restored after disconnecting and reconnecting the WiFi hub. I examined WiFi Connection information (right click on icon), after booting a few times, indicating operating speeds between 60 and 200 Mbps.
Raspbian Results
At this stage, WiFi did not work on my Raspbian Operating System. I needed this to indicate whether the 32 bit version of the benchmark produced similar strange performance characteristics, using the Pi 3B+. None of the numerous Googled solutions helped. As a last resort, I downloaded Raspbian Stretch, where WiFi connection appeared immediately on booting, but some of the existing mount commands did not work, nor access using Samba. After numerous “false hope” search solutions, the problems seemed to be fixed and appeared to be due to security changes. For Samba, smb.conf statements had to be commented out (in this case “security = user” and “map to guest = pi”). I think that I installed cifs-utils, some slight changes were needed in mount statements and further remote sharing permissions appeared to be necessary (Later, it was found that the latter was probably caused by a Windows 10 update).
Large Files - Pi 3B+ based programs indicate data sending performance gains of around 2.75 times and receiving at 1.5 times. There were some more significant gains from the test programs running on the remote systems, the best being for reading (Pi3B sending). Results from tests with much larger files are shown, demonstrating more consistent performance.
Random Access - Performance gains were not as high as those for large files, but all somewhat higher that CPU MHz speeds. Note the write time variations and, particularly, the exceptionally slow ones to Windows 10.
Small Files - There were mainly gains all round, but variations in average running times of individual tests affected the comparisons. Windows 10 writing to RPi was particularly slow.
Code: Select all
RASBIAN-STRETCH 32 bit
=============== 16 MB large files MB/second ===============
Higher Better
Write1 Write2 Write3 Read1 Read2 Read3
RPi 3B
To
Win 7 4.65 4.90 4.91 5.77 6.39 6.39
Win 10 4.12 4.88 4.98 6.32 6.02 5.95
Linux 4.49 4.47 4.82 6.56 4.80 6.43
From
Win 7 5.83 5.88 6.18 2.65 1.70 1.25
Win 10 6.15 3.85 6.50 2.51 1.64 1.22
Linux 6.48 4.20 5.87 4.85 4.47 4.38
RPi 3B+ Average Gain
Write Read
To
Win 7 11.58 13.76 14.52 8.44 7.74 8.43 2.76 1.33
Win 10 11.58 13.71 14.33 9.21 11.63 9.45 2.83 1.66
Linux 11.02 13.12 13.74 9.18 8.86 8.64 2.75 1.50
From
Win 7 12.91 8.80 7.93 4.69 3.50 2.81 1.66 1.96
Win 10 13.68 13.55 13.74 6.56 4.45 3.38 2.48 2.68
Linux 11.84 11.72 9.67 13.30 14.71 14.89 2.01 3.13
Larger Files To Win 7
MB
1000 14.81 14.96 14.30 8.03 8.21 8.21
2000 14.93 14.58 14.90 8.63 8.55 8.53
================ Random access milliseconds ===============
Lower Better
Read Write
From MB 4 8 16 4 8 16
RPi 3B
To
Win 7 3.009 3.346 3.633 3.90 3.67 3.65
Wiin 10 2.991 3.333 3.465 40.91 23.10 26.65
Linux 3.449 3.640 3.888 1.82 1.83 1.82
From
Win 7 1.777 1.818 1.792 2.021 2.008 1.991
Wiin 10 1.612 1.622 1.600 2.372 2.245 2.166
Linux 3.48 3.00 3.33
RPi 3B+ Average Gain
Read Write
To
Win 7 2.284 2.741 2.724 2.88 2.67 2.66 1.29 1.37
Win 10 2.894 2.617 2.697 17.11 17.75 14.66 1.19 1.83
Linux 2.804 2.641 2.719 1.33 1.33 1.34 1.34 1.37
From
Win 7 1.339 1.352 1.335 1.485 1.381 1.294 1.34 1.45
Win 10 1.228 1.177 1.184 1.483 1.520 1.602 1.35 1.47
Linux 2.11 2.10 2.09 1.56
================ Average millisecs 200 files ==============
Lower Better
Write Read
File KB 4 8 16 4 8 16
RPi 3B
To
Win 7 15.22 16.98 19.09 12.95 14.80 17.08
Wiin 10 14.38 15.90 18.04 12.94 13.69 14.59
Linux 15.95 16.25 18.74 14.58 16.27 16.57
From
Win 7 15.27 15.43 16.75 6.34 7.84 9.66
Wiin 10 25.55 28.66 28.73 7.96 8.94 11.23
Linux 8.41 10.30 11.49 13.22 14.08 15.08
RPi 3B+ Average Gain
Write Read
To
Win 7 10.00 10.79 11.30 10.15 11.33 11.30 1.60 1.37
Win 10 10.60 11.43 12.06 9.54 10.12 10.58 1.42 1.36
Linux 12.29 25.02 13.64 11.17 11.72 12.46 1.00 1.34
From
Win 7 12.29 12.17 12.95 4.56 5.67 6.53 1.27 1.42
Win 10 17.37 21.17 19.58 6.13 7.63 8.15 1.43 1.28
Linux 10.64 10.81 13.92 6.34 7.33 7.65 0.85 1.99
Gentoo Results
The next tables are results from running the benchmarks using 64 bit Gentoo, instead of Raspbian. As indicated above, all the Pi 3B+ based tests sometimes appeared to run at 2.4 GHz speeds and not 5 GHz. Slow and fast benchmark runs are shown below.
Large Files - On running the Pi 3B+ based programs at the higher speeds, they were around 2.4 times faster than those on the old 3B on writing but, inexplicably, mainly slower on reading (receive). Running from the remote based system, writing (Pi receive) results were also slower but reading mainly too variable to call. Note the faster Linux speeds on data from Linux to Gentoo. Results from tests with much larger files are again shown, demonstrating more consistent performance, but still slow reading speeds. As a reminder of the difference, an example of performance via Raspbian is also shown.
Random Access - Pi 3B+ performance gains over the older 3B were similar as those using Raspbian, again with noticeably slow speeds sending data to the PC running Windows 10.
Small Files - Except for the Windows 10 based benchmark, 3B+ performance gains, over the 3B, were higher than the CPU MHz gains. The one fromWindows 10 was again particularly slow on sending data.
Code: Select all
GENTOO 64 bit
=============== 16 MB large files MB/second ===============
Higher Better
Write1 Write2 Write3 Read1 Read2 Read3
RPi 3B
To
Win 7 4.50 4.72 4.66 6.01 5.61 5.90
Win 10 4.41 4.62 4.72 5.57 5.91 5.64
Linux 4.44 4.60 4.43 5.89 3.39 5.69
From
Win 7 4.56 6.02 6.04 2.54 1.59 1.16
Win 10 6.01 6.04 6.14 2.55 1.62 1.20
Linux 6.27 2.70 6.17 4.66 4.81 4.70
RPi 3B+ Average Gain
Write Read
To
Win 7 a 5.51 5.85 5.99 3.68 3.55 3.69
Win 7 b 10.71 11.66 11.78 4.17 3.92 3.60 2.46 0.67
Win 10a 5.51 5.96 5.41 1.24 3.73 3.69
Win 10b 10.01 11.20 11.80 4.17 4.23 4.22 2.40 0.74
Linux a 4.91 5.67 5.71 5.45 4.96 5.19
Linux b 10.19 10.99 11.34 3.90 4.18 3.87 2.41 0.80
From
Win 7 a 3.54 3.61 3.72 2.04 1.42 1.08
Win 7 b 4.15 4.23 4.27 2.98 2.35 1.95 0.76 1.38
Win 10a 3.75 3.62 3.41 2.01 1.47 1.17
Win 10b 4.33 4.82 4.60 2.30 1.60 1.23 0.76 0.96
Linux a 5.87 5.99 5.50 5.17 5.63 5.25
Linux b 4.17 4.18 4.24 10.76 11.69 11.76 0.83 2.41
Larger Files To Win 7 b
MB
1024 12.66 12.82 12.82 4.07 4.10 4.10
2048 12.61 12.09 10.58 4.09 4.14 4.10
Raspbian
2000 14.93 14.58 14.90 8.63 8.55 8.53
================ Random access milliseconds ===============
Lower Better
Read Write
From MB 4 8 16 4 8 16
RPi 3B
To
Win 7 3.418 3.491 3.662 4.17 3.87 3.87
Win 10 3.268 3.449 3.658 44.41 35.76 29.53
Linux 5.004 3.590 3.674 1.92 2.03 2.09
From
Win 7 2.158 2.081 1.925 2.357 2.149 2.143
Win 10 2.231 1.785 1.780 2.961 2.926 3.020
Linux 3.75 3.50 3.40
RPi 3B+ Average Gain
Read Write
To
Win 7 a 3.111 3.363 3.557 3.41 3.41 3.42
Win 7 b 2.695 2.799 2.861 3.02 2.84 2.87 1.27 1.36
Win 10a 2.962 3.102 3.422 18.70 21.02 21.16
Win 10b 2.691 2.705 2.849 17.14 20.20 16.64 1.26 2.03
Linux a 3.677 3.347 3.534 1.86 1.86 1.78
Linux b 2.883 2.917 3.025 1.43 1.44 1.43 1.39 1.40
From
Win 7 a 1.838 1.791 1.799 2.079 1.966 2.016
Win 7 b 1.548 1.442 1.439 1.870 1.746 1.831 1.39 1.22
Win 10a 1.743 1.589 1.667 3.776 3.022 2.628
Win 10b 1.946 1.792 1.780 3.154 3.754 3.103 1.05 0.89
Linux a 3.87 3.15 3.13
Linux b 2.27 2.26 2.28 1.56
================ Average millisecs 200 files ==============
Lower Better
Write Read
File KB 4 8 16 4 8 16
RPi 3B
To
Win 7 15.89 18.28 20.61 14.17 16.21 17.07
Win 10 15.58 17.86 23.49 13.91 15.79 15.93
Linux 17.67 19.02 21.23 15.60 17.33 19.07
From
Win 7 16.53 18.56 19.80 7.24 9.48 13.12
Win 10 34.15 32.96 35.78 9.02 10.61 12.94
Linux 15.82 16.76 17.24 9.53 10.38 12.36
RPi 3B+ Average Gain
Write Read
To
Win 7 a 15.88 18.23 25.52 16.15 14.40 15.79
Win 7 b 11.23 11.90 13.25 10.84 12.31 14.32 1.51 1.27
Win 10a 13.46 15.22 17.30 11.99 13.20 14.11
Win 10b 11.44 12.28 13.48 10.35 11.12 13.61 1.53 1.30
Linux a 15.90 19.33 19.07 14.33 15.29 18.05
Linux b 12.72 13.59 14.32 12.22 13.24 15.17 1.43 1.28
From
Win 7 a 15.89 17.62 18.89 5.91 8.56 10.60
Win 7 b 14.15 15.11 17.23 5.47 6.39 7.18 1.18 1.57
Win 10a 32.32 31.66 32.92 8.35 10.03 12.86
Win 10b 36.88 37.59 38.36 10.06 11.31 12.72 0.91 0.96
Linux a 11.32 11.80 13.74 8.66 10.07 11.94
Linux b 9.75 10.52 12.68 6.96 7.70 8.87 1.51 1.37
Other Minor Issues
1. Samba was not started automatically on booting.
2. With Gentoo, the 3B+ froze on powering off, if a mounted destination was not unmounted.
3. The CPU MHz scaling governor needed to be set to “performance” to avoid early measurements appearing to be too slow.