linux irq balancing – affinity

IRQs have an associated “affinity” property, smp_affinity, which defines the CPU cores that are allowed to execute the ISR for that IRQ. This property can be used to improve application performance by assigning both interrupt affinity and the application’s thread affinity to one or more specific CPU cores. This allows cache line sharing between the specified interrupt and application threads.

egrep em. /proc/interrupts
cat /proc/irq/47/smp_affinity

the default value for smp_affinity is f, meaning that the IRQ can be serviced on any of the CPUs in the system. Setting this value to 1, as follows, means that only CPU 0 can service this interrupt.

echo 1 > /proc/irq/47/smp_affinity

Leave a Reply

Your email address will not be published. Required fields are marked *