Eric van Gyzen
eric at vangyzen.net
Mon May 13 16:10:51 UTC 2013
On 05/13/2013 03:43, Meny Yossefi wrote:
> I'm running FreeBSD 9.1.
> I was wandering if there's a way to distribute hardware interrupts (pinning an interrupt handler to a specific CPU) across processors for performance benefits.
> Linux has a process called irqbalancer for exactly that purpose. Is there an equivalent in FreeBSD ?
A driver can use bus_bind_intr(9) for this purpose. It assigns the
MSI-X signalling and the corresponding interrupt thread (if any) to the
given CPU. sys/dev/ixgbe/ixgbe.c is a good example. This capability is
exposed to user-land via cpuset(2) and cpuset(1).
Note that these are static assignments. To my knowledge, there is no
FreeBSD equivalent of Linux's irqbalance, which dynamically shuffles
IRQs based on runtime behavior. I would be delighted if I'm wrong. :)
More information about the freebsd-performance