Привіт, питаннячко маю

Ось є документація - 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<NF-2;i++) { if ($i > 0) { printf("%d (%s) ",i-2, $i) } } printf("%s\n", $NF) }'
53: :: 8  (130512942) eno1np0-TxRx-0
54: :: 16 (131798602) eno1np0-TxRx-1
55: :: 30 (131497677) eno1np0-TxRx-2
56: :: 32 (132016063) eno1np0-TxRx-3
57: :: 40 (131285579) eno1np0-TxRx-4
58: :: 49 (130688802) eno1np0-TxRx-5
59: :: 57 (130551356) eno1np0-TxRx-6
60: :: 65 (131662981) eno1np0-TxRx-7

# grep eno1 /proc/interrupts  |awk '$1 ~ /^[0-9]+/ {printf("%s :: ", $1); for(i=2;i<NF-2;i++) { if ($i > 0) { printf("%d (%s) ",i-2, $i) } } printf("%s\n", $NF) }'
53: :: 8  (130583745) eno1np0-TxRx-0
54: :: 16 (131869546) eno1np0-TxRx-1
55: :: 30 (131569504) eno1np0-TxRx-2
56: :: 32 (132088328) eno1np0-TxRx-3
57: :: 40 (131355619) eno1np0-TxRx-4
58: :: 49 (130759795) eno1np0-TxRx-5
59: :: 57 (130622113) eno1np0-TxRx-6
60: :: 65 (131735316) eno1np0-TxRx-7

Власне, питання - це лічильники в /proc/interrupts брешуть чи я щось не долаштував?

Дяка.
-- 
Volodymyr Litovka
  "Vision without Execution is Hallucination." -- Thomas Edison