Re: IRQ Affinity

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It turned out to be the fault of the irqbalance service (user mode daemon). I don't know exactly how it operates, but the balancing scheme it employs is clearly sub-optimal.

Elad

Elad Lahav wrote:
Hello all,

I have a dual-processor Xeon machine with HyperThreading, for a total of 4 logical processors. The machine is equipped with 4 Gigabit NICs. I am trying to set the IRQ affinity, so that each NIC is handled by a different logical processor. I do that by writing 1, 2, 4 and 8 to the respective entries in /proc/irq/IRQ#/smp_affinity. After starting 4 processes, each sending packets via a different NIC, I can see that the interrupts start migrating, despite the affinity. Moreover, the affinity values change. Soon after starting the test, all network interrupt end up on logical processors 2 and 3 (which, I believe, are on the same physical processor).

Why won't the affinity hold? My suspect at this point is the move_masked_irq() function, which I believe is the only other mechanism for changing affinity, other than writing to the /proc entries.

Thanks,
Elad

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ




--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux