Numa: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 64: Строка 64:
 
Например, если второй разъем CPU не заполнен на материнской плате с двумя разъемами,
 
Например, если второй разъем CPU не заполнен на материнской плате с двумя разъемами,
 
часть устройств встроенных в платк как, например, контроллеры Ethernet и SAS, не будут работать.
 
часть устройств встроенных в платк как, например, контроллеры Ethernet и SAS, не будут работать.
  +
<BR>
  +
(Примечание: но это теория, на практике обычно нельзя поставить только второй процессор, а встроенные устройства (соответствующие им линии PCIe) подключены к первому (или нулевому, зависит от нумерации) процессору. )
 
<BR>
 
<BR>
 
Кроме того, как уже сказано, часть линий PCIe могут будут работать что сделает слоты бесполезными.
 
Кроме того, как уже сказано, часть линий PCIe могут будут работать что сделает слоты бесполезными.
Строка 73: Строка 75:
 
<BR>
 
<BR>
   
  +
Здесь мы видим, что если бы CPU1 отсутствовал (гипотетический случай),
Здесь мы видим, что если CPU1 отсутствовал, то встроенный контроллер Intel X540 10GbE LAN и LSI SAS2208 не имеет PCIe, от которого можно было бы отсоединиться. И наоборот, без CPU2 не было бы доступа к нескольким слотам PCIe 3.0 x8. К счастью, большинство производителей материнских плат указывают в своих руководствах, какой разъем следует заполнять..
 
  +
то встроенный контроллер <code>Intel X540 10GbE LAN</code> и <code>LSI SAS2208</code> не имеет <code>PCIe</code>, от которого можно было бы отсоединиться.
  +
  +
<BR>
 
И наоборот, без CPU2 не было бы доступа к нескольким слотам PCIe 3.0 x8. К счастью, большинство производителей материнских плат указывают в своих руководствах, какой разъем следует заполнять..

Версия 10:00, 3 апреля 2024

Numa

Это заготовка статьи про Numa

cat /sys/class/net/enp6s0f0/device/numa_node

Можно ли использовать один CPU в многопроцессорных системах? (и почему)

Почему возникает такой вопрос?
По-тому что системы с 2 и более сокетами на материнской плате допускают возможное расширение без полной замены сервера
Ответ на вопрос - "Да, работать будет", но с некоторыми оговорками.

Supermicro X8DTN

Подавляющее большинство материнских плат «просто работают»,
если вы поставить процессор в сокет с наименьшим номером
Это справедливо как для материнских плат Intel, так и для AMD в целом, а в случае сомнения информацию можнонайти в руководстве (но у меня никогда таких сомнений не было)

Вот пример материнской платы Supermicro X8DTN, которая представляла собой довольно двухпроцессорную плату Xeon серий Intel 5500 и 5600.
NUMA 1 Supermicro-X8DTN-Block-Diagram.png

Dell C6100

Поскольку наборы микросхем Intel серий 5500 и 5520 имели северный мост IOH, установка только одного процессор в двухпроцессорной материнской плате не привела к недоступности каких-то ресурсов материнской платы.

За исключением память, так как каждый слот памяти относится к одному из процессоров

Во времена Intel LGA1366, а также на платформах AMD C32 и G34 и северный, и южный мосты находились на материнской плате, поэтому процессоры обычно подключались через северный мост, чтобы получить доступ к шине PCI.
В качестве примера можно рассмотреть Dell C6100 (это такой а-ля блейд, 4 ноды в корпусе 2U с общими резервированными блоками питания но каждый со своими дисками и сетью)
C установкой одного процессора и заполнением только половины слотов памяти он будет работать как обычная однопроцессорная система
NUMA 3 STH-colo-pfsense-node-and-Mellanox-IB-node.png
На фото в примере можно видеть что установлен только один процессор и заполнена только половина слотов DIMM, соответствующих установленному процессору.

Эта конфигурация значительно отличается от более современных систем тспользующих сокет LGA2011
В качестве примера более новой конфигурации рассмотрим плату Supermicro X9DRH-7TFу которой есть onboard LSI SAS и стевая карта 10GbE Intel X540.

Supermicro X9DRH-7TF


NUMA 0 Supermicro-X9DRH-7TF-Layout.png

Более свежие архитектуры добавляют еще один уровень сложности.
На примере двухпроцессорной платформы Intel Xeon E5 LGA2011 слоты расширения PCIe напрямую привязаны к процессору.
На изображении выше можно увидеть каждый слот PCIe, привязанный к определенному процессору.
Когда сокет CPU не заполнен, часть линий PCIe оказываются "подвешенными в воздухе".
Это оказывает существенное влияние на функциональность материнской платы.
Например, если второй разъем CPU не заполнен на материнской плате с двумя разъемами, часть устройств встроенных в платк как, например, контроллеры Ethernet и SAS, не будут работать.
(Примечание: но это теория, на практике обычно нельзя поставить только второй процессор, а встроенные устройства (соответствующие им линии PCIe) подключены к первому (или нулевому, зависит от нумерации) процессору. )
Кроме того, как уже сказано, часть линий PCIe могут будут работать что сделает слоты бесполезными.
Вот соответствующая диаграмма для материнской платыSupermicro X9DRH-7TF:


NUMA 4 Supermicro-X9DRH-7TF-Block-Diagram.png

Здесь мы видим, что если бы CPU1 отсутствовал (гипотетический случай), то встроенный контроллер Intel X540 10GbE LAN и LSI SAS2208 не имеет PCIe, от которого можно было бы отсоединиться.


И наоборот, без CPU2 не было бы доступа к нескольким слотам PCIe 3.0 x8. К счастью, большинство производителей материнских плат указывают в своих руководствах, какой разъем следует заполнять..