
Привіт, питаннячко маю
Ось є документація - https://docs.kernel.org/networking/scaling.html - в
якій є розділ RSS IRQ Configuration, де кажуть шо або irqbalance, або
manual adjust відповідно до
https://docs.kernel.org/core-api/irq/irq-affinity.html
Ок, для тесту я пішов в manul adjust й зробив відповідні smp_affinity
(застопав irqbalance, звісно) - тут апаратні черги NIC чіпляються до
різних IRQ, відповідно маска встановлена так, щоб розкидати це IRQ по 8
корам:
53 :: 00000000,00000000,0000ff00 :: 8-15
54 :: 00000000,00000000,00ff0000 :: 16-23
55 :: 00000000,00000000,ff000000 :: 24-31
56 :: 00000000,000000ff,00000000 :: 32-39
57 :: 00000000,0000ff00,00000000 :: 40-47
58 :: 00000000,00ff0000,00000000 :: 48-55
59 :: 00000000,ff000000,00000000 :: 56-63
60 :: 000000ff,00000000,00000000 :: 64-71
але дивлюсь на значення лічильників в /proc/interrupts й бачу що пох -
шо з irqbalance, шо з маска в smp_affinity - приростає по кожному IRQ
тільки на одній корі. Трафіку в цілому до біса (200к+ pps) - гадаю
розкидає є шо.
# grep eno1 /proc/interrupts |awk '$1 ~ /^[0-9]+/ {printf("%s :: ",
$1); for(i=2;i