Назад | Перейти на главную страницу

Система Linux Opteron выглядит как UMA, но должна быть NUMA

Согласно numactl, этот бокс Opteron с двумя процессорами является UMA, а не ожидаемым NUMA:

$ numactl --hardware
available: 1 nodes (0)
node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
node 0 size: 65534 MB
node 0 free: 381 MB
node distances:
node   0 
  0:  10 

Думаю, это должен быть NUMA, потому что есть четыре 4-ядерных процессора *. Насколько я понимаю, у каждого процессора свой канал памяти; если процессору требуется доступ к памяти на нелокальном узле, он должен использовать гипертранспорт, что требует больше времени, чем доступ к памяти на локальном узле. AMD объясняет это Вот.

Материнская плата имеет 16 слотов оперативной памяти, по 8 на каждый процессор. Все 16 заполнены по 4 ГБ каждая, всего 64 ГБ. Еще несколько подробностей:

Почему numactl сообщает, что это поле UMA?

* В каждой упаковке два кристалла процессора, поэтому на материнской плате имеется только два разъема процессора.

BIOS скрывает реальность NUMA за node interleaving настройка. Установка этого параметра на Disabled даст вам настоящую систему NUMA в том, что касается ОС. Не многие системы действительно эффективно используют NUMA, поэтому производители материнских плат по умолчанию сделать все одинаково медленно скорее, чем, пусть ОС выяснит, для чего нужен быстрый и медленный доступ.