HI Peter! It is a nice intuition! Have u tried the example on https://www.kernel.org/doc/Documentation/IRQ-affinity.txt to check if on your machine the IRQs are always being handled by a specific CPU? And remember to disable/stop irqbalance to avoid OS to automatic balance IRQs across CPUs in background! I'm not that familiar with this stuff but on monday I will see my collagues working on the kernel at the office and I will ask something about it
Cheers, Franz Il giorno venerdì 15 marzo 2019 15:40:07 UTC+1, Peter Veentjer ha scritto: > > I have a question about RSS and how a CPU is selected to process the > interrupt. > > So with RSS you have multiple rx-queue and each rx-queue has an IRQ > associated to it. Each CPU can pick up the IRQ as clearly explained here: > > https://www.kernel.org/doc/Documentation/networking/scaling.txt > > It is possible to using IRQ/CPU affinity to prevent that just any CPU > picking up the IRQ. > > My question is about the default behavior when no explicit affinity has > been set. > > Is there any advantage of letting the same rx-queue being processed by > different CPU's? In case of a random CPU picking up same IRQ, you could end > a packet being processed at a different CPU for every packet being > received. This will cause a lot of cache coherence traffic which will > certainly not improve performance. > > When I look at /proc/interrupts of my local system, it seems the same CPU > is processing a specific rx-queue. So it looks that the OS is already > applying some form of affinity to map an IRQ to a CPU. > > Can someone shed a light on this? > > Thanks. > > -- You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
