作为我们正在运行以优化Linux机器上应用程序性能的实验的一部分,我们试图将所有网络中断分配给一个cpu核心。
不幸的是,它似乎并没有按照它应有的方式工作。我们在这里有一个插话:
[root@shou18librh05 ~]# cat /proc/interrupts | grep 107
107: 0 0 0 0 0 0 0 0 PCI-MSI-X eth-mlx4-0目前在哪里处理?
[root@shou18librh05 ~]# cat /proc/irq/107/smp_affinity
7fffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff试着把它移到,比如说,第一个核心:
[root@shou18librh05 ~]# echo 1 > /proc/irq/107/smp_affinity它动了吗?
[root@shou18librh05 ~]# cat /proc/irq/107/smp_affinity
7fffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff不..。
有人知道为什么会发生这种事吗?谷歌没有给出任何明显的解决方案/暗示.
Linux是:
[root@shou18librh05 ~]# uname -a
Linux shou18librh05 2.6.18-308.el5 #1 SMP Fri Jan 27 17:17:51 EST 2012 x86_64 x86_64 x86_64 GNU/Linux发布于 2015-12-11 15:41:36
很可能您的系统上有一些禁用的设备已经使用了CPU1的中断向量空间,特别是由于这些设备还没有启用,它们的中断号没有出现在/proc/中断中。irq到cpu矢量分配是在内核的APIC中完成的。
如果它对你有用,请试一试:
https://serverfault.com/questions/543593
复制相似问题