настройка сходства smp в linux

Я хочу сбалансировать нагрузку прерывания (irq 75) в системе моей виртуальной машины. У него 64-битная RedHat 5.8, ядро ​​2.6.18. В виртуальной машине 8 процессоров.

Когда я бегу:

cat /proc/interrupts
 75:       9189   0   0   0   0   0   0   0   IO-APIC-level   eth0

Я видел, что IRQ 75 используется только CPU0. Затем я изменил smp_affinity на irq 75.

echo ff > /proc/irq/75/smp_affinity
cat /proc/irq/75/smp_affinity
00000000,00000000,00000000,00000000,00000000,00000000,00000000,000000ff

Но я снова увидел, что прерывания для irq 75 используют только CPU0.

 75:     157228   0   0   0   0   0   0   0   IO-APIC-level  eth0

Балансировка irq между процессорами отсутствует. Я хочу раздать все прерывания (irq 75) на все процессоры, я что-то не так делаю?


person Arda Demiray    schedule 15.01.2015    source источник
comment
Возможно, вам следует просто запустить irqbalance...   -  person twalberg    schedule 15.01.2015
comment
Я тоже пробовал это, но ничего не изменилось. Интересно, что когда я запускаю службу irqbalance start, через несколько секунд служба irqbalance автоматически останавливается.   -  person Arda Demiray    schedule 16.01.2015


Ответы (2)


Значение находится в шестнадцатеричном представлении битовой маски, обычно 64 бита.

  1. первая остановка irqbalance
  2. теперь попробуйте (битовый шаблон: 10 = 0x2 в шестнадцатеричном представлении)

echo 00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000002 > /proc/irq/75/smp_affinity

это должно работать, если у вас есть 2-ядерный процессор.

person Alex Simenduev    schedule 25.01.2015

Если вы используете vmware, измените драйвер Ethernet на VMXNET3, у вас будут прерывания, подобные следующим:

cat /proc/interrupts | grep eth3
57:          0          0          0          0          5  101198492          0          0   PCI-MSI-edge      eth3-rxtx-0
58:          0          0          0          0          0          2   82962355          0   PCI-MSI-edge      eth3-rxtx-1
59:          0          0          0          0          0          0          1  112986304   PCI-MSI-edge      eth3-rxtx-2
60:  120252394          0          0          0          0          0          0          1   PCI-MSI-edge      eth3-rxtx-3
61:          1  118585532          0          0          0          0          0          0   PCI-MSI-edge      eth3-rxtx-4
62:          0          1  151440277          0          0          0          0          0   PCI-MSI-edge      eth3-rxtx-5
63:          0          0          1   94639274          0          0          0          0   PCI-MSI-edge      eth3-rxtx-6
64:          0          0          0          1   63577471          0          0          0   PCI-MSI-edge      eth3-rxtx-7
65:          0          0          0          0          0          0          0          0   PCI-MSI-edge      eth3-event-8

У вас будут разные очереди «rxtx», каждая из которых назначена процессору. В моем случае нагрузка стала сбалансированной между всеми процессорами.

person Marco Angaroni    schedule 08.04.2015