cpu单核负载导致5G跑不满,mt7621+mt715 5G wifi吞吐量低

2022-10-16
0评论
/
509阅读
爱搜啊

问题描述

开发一款mt762+7615产品,发现5G tx与rx只有500多M,同时跑2G+5G也是只有600多M,达不到市场产品性能。后来发现是cpu单核负载满负荷问题造成的。

解决方法

使用cat /proc/interrupts查看linux irq发现1e100000.ethernet(以太网驱动)与ra0(mt7615驱动)在同一cpu中(CPU0),造成在跑吞吐量时cpu0满负荷,但是cpu1/cpu2/cpu3空闲

root@GL-MT1300:/# cat proc/interrupts 
           CPU0       CPU1       CPU2       CPU3       
  8:     104178     104158     104153     104144  MIPS GIC Local   1  timer
  9:      52364          0          0          0  MIPS GIC  63  IPI call
 10:          0      17343          0          0  MIPS GIC  64  IPI call
 11:          0          0      47420          0  MIPS GIC  65  IPI call
 12:          0          0          0      17015  MIPS GIC  66  IPI call
 13:    2289283          0          0          0  MIPS GIC  67  IPI resched
 14:          0    2353869          0          0  MIPS GIC  68  IPI resched
 15:          0          0     180709          0  MIPS GIC  69  IPI resched
 16:          0          0          0     331585  MIPS GIC  70  IPI resched
 19:       5281          0          0          0  MIPS GIC  33  ttyS0
 21:        576          0          0          0  MIPS GIC  27  1e130000.sdhci
 22:        593          0          0          0  MIPS GIC  29  xhci-hcd:usb1
 23:       1405          0          0          0  MIPS GIC  10  1e100000.ethernet
 24:          1          0          0          0  MIPS GIC  30  gsw
 25:      51606          0          0          0  MIPS GIC  11  ra0
ERR:          1

由上面可以知道1e100000.ethernet为23,输入命令

root@GL-MT1300:/# echo 4 > /proc/irq/23/smp_affinity


将1e100000.ethernet的irq放到cpu2中处理。

发现跑吞吐量时,2g+5G同时跑可达850M,单跑5G也可以到600M多,吞吐量数据正常。

辅助验证工具

top命令可以显示各个cpu负载,但是要在make menuconfig时选上相应的支持

mt7621+mt715 5G wifi吞吐量低

cpu单核负载导致5G跑不满


本站附件分享,如果附件失效,可以去找找看

诚通网盘附件百度网盘附件


于2022-10-16发布
相关文章