Numa

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску

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

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:


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

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.