//16个核的cpu,出现了某些核的中断数量极高,导致phy接收到的数据产生了延迟,尝试关闭某些核的中断(采用轮询的方式)测试有无优化接收包的延迟
//宋宝华,即使配置了NO_HZ_FULL 如果任务数达到了2,arch_timer中断数也会快速增加,这时就需要排除该核上的其它任务以及结合isolcpus 来处理!!!!!!!!!!!!!!!!
https://blog.csdn.net/21cnbao/article/details/113733439
///proc/interrupts只记录当前注册(还没卸载)的中断。更祥细的要看/proc/stat
查看/proc/softirqs (主要是软中断)
//GRUB_CMDLINE_LINUX_DEFAULT=“isolcpus=0-3,5,7”
//到底是中断次数过高,还是中断次数过低引起的接收网络包延迟??(应该是中断次数过高引起的!!!!!! 配置CONFIG_NO_HZ_FULL测试看看)
//持续产生滴答时钟 CONFIG_HZ_PERIODIC=y或则CONFIG_NO_HZ=n ;在idle下不产生滴答 CONFIG_NO_HZ_IDLE=y或者CONFIG_NO_HZ=y
//关单个cpu的中断,不支持关全局的中断
https://blog.csdn.net/u012247418/article/details/104180225
local_irq_disable()
// https://blog.51cto.com/u_16097040/6244043
在进一步动手之前我们需要先停掉 IRQ 自动调节的服务进程,这样才能手动绑定 IRQ 到不同 CPU,否则自己手动绑定做的更改将会被自动调节进程给覆盖掉。如果想修改 IRQ 90 的中断处理,绑定到第2个 CPU(CPU1):
# /etc/init.d/irqbalance stop
# echo "2" > /proc/irq/90/smp_affinity



浙公网安备 33010602011771号