This question has been asked before, but I believe that the world has changed enough for it to be asked again.
Does irqbalance have any use on today’s systems where we have NUMA-capable CPUs with memory sharing between their cores?
Running irqbalance --oneshot --debug
shows that a virtual guest on a modern VMware ESXi environment is sharing the NUMA nodes between cores.
# irqbalance --oneshot --debug 3
Package 0: numa_node is 0 cpu mask is 0000000f (load 0)
Cache domain 0: numa_node is 0 cpu mask is 0000000f (load 0)
CPU number 0 numa_node is 0 (load 0)
CPU number 1 numa_node is 0 (load 0)
CPU number 2 numa_node is 0 (load 0)
CPU number 3 numa_node is 0 (load 0)
irqbalance will in this case detect that it is being run on a NUMA system, and exit. This messes with our process monitoring.
Should we look into running numad instead of irqbalance on such systems?
This is mostly interesting for VMware virtualised servers.
Best Answer
Here is one answer from a technician in RedHat. Although I do believe that most enterprise hardware is NUMA capable. And as far as I know VMware will also try to fit your VMs on the same NUMA node as long as its CPU configuration fits.
Experiences (Especially concerning VMware) would be greatly appreciated.