Chinaunix

标题: 用ARM CortexA9做双网卡路由器,转发速率慢,求大神支招 [打印本页]

作者: hue2550    时间: 2016-07-01 22:56
标题: 用ARM CortexA9做双网卡路由器,转发速率慢,求大神支招
       采用xilinx的zynq 7000 SoC(双核、频率650MHz、DDR3 1066 1GB、linux kernel 3.9)做了一个1000M双网口路由器,用两台电脑TCP单向测速最大300+Mbit/s,电脑直连TCP单向测速750+Mbit/s。
用top查看系统状态发现测速时CPU 0的sirq 98%,软件中断的使用率98%,CPU 1的sirq 0%。
但是内存的使用率很低,不到100MB。
求大神支招!
作者: hue2550    时间: 2016-07-03 00:03
自己帮顶,在网上看见一种方案是修改网卡的中断CPU
1、cat /proc/interrups     
     可以看见每一个eth对应的中断号
2、cat /proc/irq/中断号/smp_affinity
     可以看见该中断号绑定的CPU号
3、echo XXX > /proc/irq/中断号/smp_affinity
     修改中断号对应的CPU

PS:XXX的解释
Binary       Hex   
CPU 0    00000001         1   
CPU 1    00000010         2   
CPU 2    00000100         4   
CPU 3    00001000         8

但是有更好的方法吗?我CPU只有两个,但是ETH有5个呀
     




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2