Steve Snyder wrote:
I am running irqbalance with default configuration on an Atom 330 machine. This CPU has 2 physical cores + 2 SMT (aka Hyperthreading) cores.
As shown below the interrupt for the eth0 device is always on CPUs 0 and 1, with CPUs 2 and 3 left idle. But why?
Maybe irqbalance prefers physical cores? My understanding, though, is that the even-numbered CPUs are the physical cores, with the odd-numbered one being the SMT cores. If this understanding is correct, it means that irqbalance is toggling between a single physical core and its SMT sibling.
Any thoughts on why irqbalance is not using all 4 CPUs to distribute the eth0 interrupts?
I believe the hyperthreading cores are enumerated after the 'real' cores - you can see this by using 'lstopo' - part of the hwloc package ('yum install hwloc') i.e. logical CPUs 0 and 1 are the 'real' cores and logical CPUs 2 and 3 are the HT cores
I suspect interrupts only have meaning on the real cores - hence you not seeing any on CPUs 2 and 3
James Pearson