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

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 53: Строка 53:
 
<BR>
 
<BR>
   
  +
Более свежие архитектуры добавляют еще один уровень сложности. <BR>
Today’s architectures add another level of complexity. With the dual Intel Xeon E5 LGA2011 platform as an example, the PCIe expansion slots are directly tied to a CPU. On the picture above, one can see each PCIe slot tied to a specific CPU. When a CPU socket is not populated, the PCIe lanes do not terminate. This has a major impact on the functionality of the motherboard. For example, if the second CPU socket is not filled in a dual socket motherboard oftentimes onboard devices such as Ethernet and SAS controllers may not work. Furthermore, PCIe lanes may not work. This will render the slots useless until the additional CPU(s) are added. Here is an associated diagram for the Supermicro X9DRH-7TF:
 
  +
На примере двухпроцессорной платформы Intel Xeon E5 LGA2011 слоты расширения PCIe напрямую привязаны к процессору.
  +
<BR>
  +
На изображении выше можно увидеть каждый слот PCIe, привязанный к определенному процессору.
  +
<BR>
  +
Когда сокет CPU не заполнен, часть линий PCIe оказываются "подвешенными в воздухе".
  +
<BR>
  +
Это оказывает существенное влияние на функциональность материнской платы. Например, если второй разъем CPU не заполнен на материнской плате с двумя разъемами,
  +
часть устройств встроенных в платк как, например, контроллеры Ethernet и SAS, не будут работать.
  +
<BR>
  +
Кроме того, как уже сказано, часть линий PCIe могут будут работать что сделает слоты бесполезными.
  +
<BR>
  +
Вот соответствующая диаграмма для материнской платы<code>Supermicro X9DRH-7TF</code>:
   
 
<BR>
 
<BR>
Строка 59: Строка 71:
 
<BR>
 
<BR>
   
  +
Здесь мы видим, что если CPU1 отсутствовал, то встроенный контроллер Intel X540 10GbE LAN и LSI SAS2208 не имеет PCIe, от которого можно было бы отсоединиться. И наоборот, без CPU2 не было бы доступа к нескольким слотам PCIe 3.0 x8. К счастью, большинство производителей материнских плат указывают в своих руководствах, какой разъем следует заполнять..
Here we can see that if CPU1 was missing, the onboard Intel X540 10GbE LAN and LSI SAS2208 controller do not have a PCIe but to hang off of. Conversely, with no CPU2, one would not have access to several PCIe 3.0 x8 slots. Luckily, most motherboard manufacturers state in their manuals which socket to populate.
 

Версия 09:56, 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 могут будут работать что сделает слоты бесполезными.
Вот соответствующая диаграмма для материнской платыSupermicro X9DRH-7TF:


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

Здесь мы видим, что если CPU1 отсутствовал, то встроенный контроллер Intel X540 10GbE LAN и LSI SAS2208 не имеет PCIe, от которого можно было бы отсоединиться. И наоборот, без CPU2 не было бы доступа к нескольким слотам PCIe 3.0 x8. К счастью, большинство производителей материнских плат указывают в своих руководствах, какой разъем следует заполнять..