As part of the experiments that we are running to optimize the performance of the applications on our Linux box we are trying to assign all the network interrupts to a single cpu core.
Unfortunately, it doesn't seem to work the way it should. E.g. we have an interrupt here:
[root@shou18librh05 ~]# cat /proc/interrupts | grep 107
107: 0 0 0 0 0 0 0 0 PCI-MSI-X eth-mlx4-0
Where is it currently handled?
[root@shou18librh05 ~]# cat /proc/irq/107/smp_affinity
7fffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff
Trying to move it to, say, first core:
[root@shou18librh05 ~]# echo 1 > /proc/irq/107/smp_affinity
Did it move?
[root@shou18librh05 ~]# cat /proc/irq/107/smp_affinity
7fffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff
No...
Does anyone have an idea why this can be happening? Googling didn't give any obvious solutions/hints...
Linux is:
[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