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.

Reply via email to