NUMA-привязка PCIe-устройства
Определение
NUMA-привязка PCIe-устройства — узел NUMA, к которому Linux относит устройство для описания его локальности. В sysfs это показывает numa_node; значение -1 означает, что узел системе неизвестен.
Также ищут: PCIe NUMA locality · NUMA node PCIe · локальность PCIe-устройства
Зачем это знать
Для сетевой карты, GPU или контроллера важно не только наличие слота, но и его положение относительно процессоров и памяти. При приёмке фиксируют numa_node и локальные CPU; если узел неизвестен, нельзя выдавать запасной список CPU за подтверждённую топологию.
Карта понятия
Связано
Что подтверждено
ABI Linux определяет /sys/bus/pci/devices/.../numa_node как NUMA-узел, к которому подключено PCI-устройство, или -1, если узел неизвестен.
Граница применимости: Linux PCI sysfs ABI; это представление топологии ядром, а не измерение задержки.
Начальное значение numa_node Linux получает из ACPI _PXM или аналогичного источника прошивки.
Граница применимости: Linux PCI sysfs ABI; конкретный источник зависит от платформы.
Запись нового значения в numa_node считается обходом ошибки прошивки: Linux помечает ядро TAINT_FIRMWARE_WORKAROUND и рекомендует сообщить проблему поставщику системы.
Граница применимости: Linux PCI sysfs ABI; это не штатная рекомендация по настройке производительности.
В Linux 6.12 local_cpus и local_cpulist для PCI-устройства используют маску CPU его NUMA-узла, если узел известен.
Граница применимости: Реализация pci_dev_show_local_cpu() при CONFIG_NUMA в Linux 6.12.
Если NUMA-узел PCI-устройства неизвестен, Linux 6.12 возвращает в local_cpus/local_cpulist маску всех online CPU вместо найденной локальной группы.
Граница применимости: Реализация pci_dev_show_local_cpu() при CONFIG_NUMA; это fallback интерфейса и не восстановленная физическая локальность.
Что проверить
- Запишите BDF и значение numa_node для устройства.
- Если numa_node известен, сопоставьте его с local_cpulist и размещением нагрузки.
- Если numa_node равен -1, не трактуйте local_cpulist как подтверждённую физическую локальность.
- Не переписывайте numa_node ради косметики: сначала разберите прошивку и поддержку платформы.
Первоисточники
- ABI testing symbols: sysfs-bus-pci
Открыт редактором 7 сентября 2026 года, заголовок документа сверен.
- Linux v6.12 — drivers/pci/pci-sysfs.c
Открыт редактором 7 сентября 2026 года, файл по тегу v6.12 сверен. Официальная реализация, не ABI-файл.
Связанные понятия
Курсы по теме
Следующий шаг
Сформулируйте задачу и уточните требования к своей системе.
Подготовить состав проектаОткроется черновик вопроса. Отправьте его, когда будете готовы.