Распределение прерываний

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (8)

просмотр истории страницы
Многие сетевые карты имеют несколько очередей для входящих пакетов. Каждая очередь висит на ядре/списке ядер. На многих железках из коробки, несмотря на то, что в smp_affinity_list указан список 0-$cpucount все прерывания находятся на первом ядре процессора. Обойти это можно раскидав с помощью echo все прерывания на разные ядра.

Для систем с одним физическим процессором и сетевыми картами, использующими драйвера igb, ixgbe, vmxnet3 можно использовать утилиту: утилиту netutils-linux.

Установка производится следующими командами:
{code}
yum install python-pip
pip install netutils-linux
{code}

Использование в контейнере reductor (для сетевого адаптера eth1):
{code}
chroot /app/reductor
/usr/local/Reductor/bin/tune_interrupts.sh rss-ladder eth1
{code}

В остальных случаях она сделает хуже и требуется ручная настройка, рекомендации по ней:
Для многопроцессорных систем настройку лучше производить вручную.

По возможности используйте разные реальные ядра, допустим, дано:

client_post_start_hook(){
/usr/local/Reductor/bin/tune_interrupts.sh rss-ladder eth1 0
/usr/local/Reductor/bin/tune_interrupts.sh rss-ladder eth0 1
}