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

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 54: Строка 54:
   
 
Более свежие архитектуры добавляют еще один уровень сложности. <BR>
 
Более свежие архитектуры добавляют еще один уровень сложности. <BR>
На примере двухпроцессорной платформы Intel Xeon E5 LGA2011 слоты расширения PCIe напрямую привязаны к процессору.
+
На примере двухпроцессорной платформы Intel Xeon E5 LGA2011 слоты расширения <code>PCIe</code> напрямую привязаны к процессору.
 
<BR>
 
<BR>
На изображении выше можно увидеть каждый слот PCIe, привязанный к определенному процессору.
+
На изображении выше можно увидеть каждый слот <code>PCIe</code>, привязанный к определенному процессору.
 
<BR>
 
<BR>
Когда сокет CPU не заполнен, часть линий PCIe оказываются "подвешенными в воздухе".
+
Когда сокет CPU не заполнен, часть линий <code>PCIe</code> оказываются "подвешенными в воздухе".
 
<BR>
 
<BR>
 
Это оказывает существенное влияние на функциональность материнской платы.
 
Это оказывает существенное влияние на функциональность материнской платы.
 
<BR>
 
<BR>
 
Например, если второй разъем CPU не заполнен на материнской плате с двумя разъемами,
 
Например, если второй разъем CPU не заполнен на материнской плате с двумя разъемами,
часть устройств встроенных в платк как, например, контроллеры Ethernet и SAS, не будут работать.
+
часть устройств встроенных в платк как, например, контроллеры <code>Ethernet</code> и <code>SAS</code>, не будут работать.
 
<BR>
 
<BR>
(Примечание: но это теория, на практике обычно нельзя поставить только второй процессор, а встроенные устройства (соответствующие им линии PCIe) подключены к первому (или нулевому, зависит от нумерации) процессору. )
+
(Примечание: но это теория, на практике обычно нельзя поставить только второй процессор, а встроенные устройства (соответствующие им линии <code>PCIe</code>) подключены к первому (или нулевому, зависит от нумерации) процессору. )
 
<BR>
 
<BR>
Кроме того, как уже сказано, часть линий PCIe могут будут работать что сделает слоты бесполезными.
+
Кроме того, как уже сказано, часть линий <code>PCIe</code> могут будут работать что сделает слоты бесполезными.
 
<BR>
 
<BR>
 
Вот соответствующая диаграмма для материнской платы<code>Supermicro X9DRH-7TF</code>:
 
Вот соответствующая диаграмма для материнской платы<code>Supermicro X9DRH-7TF</code>:
Строка 75: Строка 75:
 
<BR>
 
<BR>
   
Здесь мы видим, что если бы CPU1 отсутствовал (гипотетический случай),
+
Здесь мы видим, что если бы CPU1 отсутствовал (''гипотетический случай''),
то встроенный контроллер <code>Intel X540 10GbE LAN</code> и <code>LSI SAS2208</code> не имеет <code>PCIe</code>, от которого можно было бы отсоединиться.
+
то линии <code>PCIe</code> встроенных контроллеров <code>Intel X540 10GbE LAN</code> и <code>LSI SAS2208</code> оказались бы "висящими в воздухе" (никуда не подключены).
   
 
<BR>
 
<BR>
И наоборот, без CPU2 не было бы доступа к нескольким слотам PCIe 3.0 x8. К счастью, большинство производителей материнских плат указывают в своих руководствах, какой разъем следует заполнять..
+
C другой стороны без CPU2 (это уже более реальный случай) не будет доступа к нескольким слотам <code>PCIe 3.0 x8</code>.
  +
<BR>
  +
К счастью, большинство производителей материнских плат указывают в своих руководствах соответвие между процессорными сокетами и слотами <code>PCIe</code>

Версия 09:04, 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 отсутствовал (гипотетический случай), то линии PCIe встроенных контроллеров Intel X540 10GbE LAN и LSI SAS2208 оказались бы "висящими в воздухе" (никуда не подключены).


C другой стороны без CPU2 (это уже более реальный случай) не будет доступа к нескольким слотам PCIe 3.0 x8.
К счастью, большинство производителей материнских плат указывают в своих руководствах соответвие между процессорными сокетами и слотами PCIe