Hi all,
I have performance issues with rtl8723bs module (vendor driver)
integrated to sunix-3.4. I have custom board based on
A20-OLinuXino-MICRO with rtl8723bs connected over SDC3. I was able to
enable this module and make it download/upload but difference between
upload and download performance is huge.
Vendor driver seems to be very similar to rtl8723as.
Most of the tests I tried where with using iperf3.
Driver setup:
- CONFIG_DEBUG defined
- CONFIG_BT_COEXIST = n
- tried to compile with CONFIG_POWER_SAVING = n, but after fixing compilation
issues I was not able to associate with any AP
On target board I tried various tests:
1. TCP upload (iperf3 -c 192.168.0.105 -t 30 -i 5)
[ ID] Interval Transfer Bandwidth Retr
[ 5] 0.00-30.02 sec 139 MBytes 38.8 Mbits/sec 1 sender
[ 5] 0.00-30.02 sec 138 MBytes 38.6 Mbits/sec receiver
2. TCP download (iperf3 -c 192.168.0.105 -R -t 30 -i 5)
[ ID] Interval Transfer Bandwidth Retr
[ 5] 0.00-31.98 sec 321 KBytes 82.2 Kbits/sec 14 sender
[ 5] 0.00-31.98 sec 321 KBytes 82.2 Kbits/sec receiver
3. UDP upload (iperf3 -c 192.168.0.105 -u -t 30 -i 5)
[ ID] Interval Transfer Bandwidth Jitter Lost/Total
Datagrams
[ 5] 0.00-31.97 sec 3.74 MBytes 982 Kbits/sec 1.319 ms 0/479 (0%)
4. UDP download (iperf3 -c 192.168.0.105 -R -u -t 30 -i 5)
[ ID] Interval Transfer Bandwidth Jitter Lost/Total
Datagrams
[ 5] 0.00-31.99 sec 3.99 MBytes 1.05 Mbits/sec 1634170000.000 ms
451/483 (93%)
5. Ping
--- google.com ping statistics ---
24 packets transmitted, 24 packets received, 0% packet loss
round-trip min/avg/max = 60.515/625.154/1011.134 ms
iwconfig wlan0 output:
wlan0 IEEE 802.11bgn ESSID:"my_ssid" Nickname:"<WIFI@REALTEK>"
Mode:Managed Frequency:2.432 GHz Access Point: 30:B5:C2:0B:A5:54
Bit Rate:150 Mb/s Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Encryption key:****-****-****-****-****-****-****-**** Security
mode:open
Power Management:off
Link Quality=48/100 Signal level=-73 dBm Noise level=0 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
I also tried to use profiling tools but my expertise in that area is
probably not good enough: Perf said that we we spend a lot of time in
_raw_spin_unlock_irqrestore (26.75%) I'm not sure if this is normal and
where in code is this unlock spinning.
Logs:
- TCP download with rtl872bs logs - https://gist.github.com/1bb54f589e9f3d8e3773
- TCP upload with rtl8723bs logs - https://gist.github.com/0c1a2b0f39f743bea8c5
Have you got any ideas how to approach debugging of such problem ?
Did you face similar issues ? What can be root cause of this behavior ?
If there are any additional information that I can provide to help you
answer please let me know.
--
Best Regards,
Piotr Król
Embedded Systems Consultant
http://3mdeb.com | @3mdeb_com
--
You received this message because you are subscribed to the Google Groups
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.