Привязка IRQ к CPU
Определение
Привязка IRQ к CPU — правило Linux, которое задаёт, какие процессоры могут обслуживать конкретное аппаратное прерывание. Маску можно посмотреть в /proc/irq.
Также ищут: IRQ affinity · SMP IRQ affinity · привязка прерываний к CPU
Зачем это знать
Для многоочередной сетевой карты распределение IRQ влияет на то, какие CPU получают работу по приёму пакетов. Ручная настройка полезна только вместе с проверкой фактических IRQ и других служб, которые могут менять привязку.
Карта понятия
Что подтверждено
Файлы /proc/irq/IRQ/smp_affinity и smp_affinity_list задают разрешённые CPU для конкретного IRQ: первый использует битовую маску, второй — список CPU.
Граница применимости: Linux SMP IRQ affinity; интерфейсы относятся к IRQ, для которых контроллер поддерживает изменение affinity.
Для IRQ нельзя задать маску, исключающую все CPU; если контроллер прерываний не поддерживает affinity, значение не изменится с исходного разрешения всех CPU.
Граница применимости: Linux SMP IRQ affinity; конкретная поддержка зависит от архитектуры и контроллера прерываний.
default_smp_affinity задаёт исходную маску для ещё не активированных IRQ; после активации конкретный IRQ получает эту маску и затем может иметь собственную настройку.
Граница применимости: Linux SMP IRQ affinity; дальнейшее управление зависит от типа IRQ и драйвера.
В сетевом тракте Linux служба irqbalance может динамически менять назначения IRQ и переопределить ручную настройку affinity.
Граница применимости: Система с работающим irqbalance; политика и исключения зависят от его конфигурации.
Что проверить
- Найдите IRQ нужных очередей по /proc/interrupts.
- Для каждого IRQ прочитайте smp_affinity_list и зафиксируйте разрешённые CPU.
- Сопоставьте выбранные CPU с NUMA-узлом сетевой карты и приложением.
- После ручной настройки проверьте значения повторно, особенно если работает irqbalance.
Первоисточники
- SMP IRQ affinity
Интерфейсы /proc/irq/*/smp_affinity и smp_affinity_list, их смысл и ограничения.
- Scaling in the Linux Networking Stack
RSS, RPS, RFS и XPS; для этой партии использованы разделы RSS/RPS и замечание об irqbalance.
Связанные понятия
Курсы по теме
Следующий шаг
Сформулируйте задачу и уточните требования к своей системе.
Подготовить подбор с ДелектусомОткроется черновик вопроса. Отправьте его, когда будете готовы.