NUMA описывает близость памяти к процессору, а бюджет PCIe — происхождение линий ввода-вывода. Для многосокетной системы нужны обе схемы.
Почему это важно
Потоки могут выполняться на одном NUMA-узле, а обращаться к памяти другого. Система останется совместимой, но задержка вырастет, поэтому для чувствительной нагрузки процессор и память размещают согласованно.
Что подтверждено
В NUMA-системе банки памяти представлены узлами, а стоимость доступа процессора к ним различается в зависимости от расстояния до узла.
Граница применимости: Модель физической памяти Linux; конкретная задержка и пропускная способность измеряются на выбранной платформе.
По умолчанию Linux старается выделять память на NUMA-узле, ближайшем к процессору, где выполняется процесс.
Граница применимости: Поведение действует, если не задана другая политика размещения и на ближайшем узле есть подходящая память.
Политика NUMA управляет выбором узлов для размещения памяти и настраивается отдельно от набора процессоров, доступных задаче.
Граница применимости: Контейнеры, виртуальные машины и приложения могут добавлять собственные ограничения поверх политики ядра Linux.
Не путать
Что проверить
- Посмотрите, на каких процессорах и NUMA-узлах работают потоки.
- Проверьте, где фактически выделена их память.
- Для чувствительной нагрузки измерьте локальный и удалённый доступ на целевой системе.
Первоисточники
Physical Memory
Linux kernel documentation · актуальная документация ядра, проверено 29 августа 2026 года
Описывает NUMA nodes, различную стоимость доступа и node-local allocation.
Открыть первоисточникNUMA Memory Policy
Linux kernel documentation · актуальная документация ядра, проверено 29 августа 2026 года
Разграничивает NUMA memory policy и cpusets и описывает выбор узлов для выделения памяти.
Открыть первоисточникPCIe Lane Ownership on Intel Server Board S2600WF
Intel · support article 000090009, проверено 21 июля 2023 года
Показывает привязку riser-слотов к CPU 1, CPU 2 и DMI и зависимость части слотов от второго CPU.
Открыть первоисточник