Многопроцессорные модули
Многопроцессорный модуль — это конструктивно и функционально законченное электронное устройство, содержащее два и более центральных процессора (или вычислительных ядра), объединённых общей системой памяти, шинами ввода-вывода и вспомогательными контроллерами, предназначенное для выполнения параллельных вычислений в составе вычислительной системы или встраиваемого оборудования. Многопроцессорные модули относятся к классу вычислительных модулей высокой степени интеграции и применяются в серверах, суперкомпьютерах, системах обработки сигналов, авионике и промышленной автоматике.
История
Первые многопроцессорные модули появились в конце 1960-х — начале 1970-х годов в рамках развития мейнфреймов. Одним из ранних примеров стала система IBM System/360 Model 67, которая поддерживала до четырёх процессоров, объединённых через общую память. Однако в то время модули представляли собой отдельные стойки с процессорами, соединённые кабелями, и не были конструктивно едиными.
Настоящий прорыв произошёл в 1980-е годы с развитием микропроцессоров. Компания Intel в 1989 году выпустила процессор i860, который мог работать в многопроцессорных конфигурациях, а в 1993 году представила набор микросхем 450GX для двухпроцессорных материнских плат на базе Pentium. В 1995 году появились первые коммерческие многопроцессорные модули для серверов — например, модули на базе процессоров Pentium Pro, которые поддерживали до четырёх процессоров в одной системе.
В 2000-е годы с распространением многоядерных процессоров (первый двухъядерный процессор для настольных ПК — Intel Pentium D, 2005 год) многопроцессорные модули стали эволюционировать в сторону систем на кристалле (SoC). В 2010-х годах появились модули с десятками ядер, например, модули на базе процессоров Intel Xeon Phi (2012 год) или AMD EPYC (2017 год), которые могли содержать до 64 ядер в одном корпусе.
Классификация
Многопроцессорные модули классифицируются по нескольким признакам.
По типу архитектуры памяти
- Симметричная многопроцессорная архитектура (SMP) — все процессоры имеют равный доступ к общей оперативной памяти. Примеры: двухпроцессорные модули на базе Intel Xeon, модули для серверов HP ProLiant.
- Несимметричная многопроцессорная архитектура (ASMP) — каждый процессор имеет собственный локальный банк памяти, а доступ к общей памяти осуществляется через коммутатор. Используется в системах реального времени и встраиваемых решениях.
- Архитектура с неоднородным доступом к памяти (NUMA) — память физически распределена между процессорами, но каждый процессор может обращаться к памяти другого с разной задержкой. Характерна для модулей на базе процессоров AMD EPYC и Intel Xeon Scalable.
По количеству процессоров
- Двухпроцессорные (2P) — наиболее распространённый тип для серверов начального и среднего уровня. Пример: модули на базе Intel Xeon E5-2600.
- Четырёхпроцессорные (4P) — применяются в серверах среднего класса и рабочих станциях. Пример: модули Dell PowerEdge R940.
- Восьмипроцессорные (8P) и более — используются в высокопроизводительных вычислениях (HPC) и суперкомпьютерах. Пример: модули на базе Intel Xeon Platinum 9200.
По конструктивному исполнению
- Модули в форм-факторе материнской платы — стандартные платы с разъёмами для процессоров, слотов памяти и интерфейсов.
- Модули в форм-факторе blade — компактные платы для блейд-серверов, устанавливаемые в общее шасси.
- Модули в форм-факторе COM Express, Qseven, SMARC — встраиваемые модули для промышленных и встраиваемых систем, содержащие процессоры, память и контроллеры на одной плате.
Устройство и характеристики
Многопроцессорный модуль включает следующие ключевые компоненты:
- Центральные процессоры (CPU) — от 2 до 8 и более, каждый из которых может быть многоядерным. В современных модулях используются процессоры архитектуры x86-64 (Intel Xeon, AMD EPYC), ARM (Ampere Altra, Marvell ThunderX) или RISC-V.
- Системная память (RAM) — обычно DDR4 или DDR5, объёмом от 16 ГБ до нескольких терабайт. В SMP-модулях память общая, в NUMA — распределённая.
- Чипсет (набор системной логики) — обеспечивает связь между процессорами, памятью и периферией. В современных модулях функции чипсета часто интегрированы в процессор.
- Интерфейсы ввода-вывода — PCI Express (для подключения видеокарт, сетевых карт, NVMe-накопителей), USB, Ethernet, SATA/SAS.
- Система охлаждения — активное (вентиляторы) или пассивное (радиаторы, тепловые трубки). Для модулей с высокой тепловыделяющей мощностью (TDP более 200 Вт) применяется жидкостное охлаждение.
- Управляющий контроллер — BMC (Baseboard Management Controller) для удалённого мониторинга и управления.
Характеристики модуля определяются типом используемых процессоров, их тактовой частотой (от 1,5 до 4,5 ГГц), количеством ядер (от 4 до 128), объёмом кэш-памяти (от 8 до 256 МБ), пропускной способностью памяти (до 400 ГБ/с и выше) и поддерживаемыми интерфейсами.
Применение
Многопроцессорные модули применяются в областях, требующих высокой производительности параллельных вычислений:
- Серверы и дата-центры — для обработки запросов веб-сайтов, баз данных, виртуализации (VMware, Hyper-V). Пример: модули на базе Intel Xeon Platinum 8380.
- Высокопроизводительные вычисления (HPC) — для научных расчётов, моделирования климата, геномных исследований. Пример: модули в суперкомпьютерах, таких как «Ломоносов-2» (МГУ) или «Кристофари» (Сколтех).
- Системы обработки сигналов и изображений — в радиолокации, медицинской томографии, системах технического зрения. Используются модули на базе процессоров с архитектурой ARM или DSP.
- Авионика и космическая техника — для бортовых вычислителей, систем управления полётом. Применяются модули, устойчивые к радиации и вибрациям (например, на базе процессоров PowerPC или RAD750).
- Промышленная автоматика и робототехника — для управления сложными технологическими процессами, многокоординатными станками, промышленными роботами.
Примеры
- Intel Xeon Phi 7210 — модуль с 64 ядрами (архитектура x86), 16 ГБ памяти HBM, TDP 215 Вт. Применялся в суперкомпьютерах и рабочих станциях HPC.
- AMD EPYC 7742 — 64-ядерный процессор для серверов, поддерживающий до 8 процессоров в одной системе (8P-конфигурация). Используется в дата-центрах и облачных платформах.
- Ampere Altra Max — 128-ядерный процессор на архитектуре ARM, предназначенный для серверов с высокой энергоэффективностью. Применяется в облачных вычислениях.
- Модуль COM Express Type 7 на базе Intel Xeon D-2100 — встраиваемый модуль с 4–16 ядрами, поддержкой до 512 ГБ памяти, используется в промышленных и телекоммуникационных системах.
- Модуль для блейд-сервера HP BladeSystem c7000 — поддерживает до 4 процессоров Intel Xeon E5-2600, до 1,5 ТБ памяти, 10 слотов PCI Express.
Интересные факты
- Первый коммерчески успешный многопроцессорный модуль для настольных ПК — Intel Pentium Pro (1995 год) — поддерживал до 4 процессоров в одной системе, но требовал специальной материнской платы и чипсета.
- В 2018 году компания AMD выпустила процессор EPYC 7601, который в 2P-конфигурации обеспечивал до 64 ядер и 128 потоков, что стало рекордом для серверных модулей того времени.
- Многопроцессорные модули на базе процессоров ARM (например, Ampere Altra) потребляют на 30–50% меньше энергии, чем аналогичные модули на x86, при сопоставимой производительности, что делает их перспективными для «зелёных» дата-центров.
- В России многопроцессорные модули разрабатываются, в частности, компанией «Байкал Электроникс» (процессоры Baikal-S, Baikal-M) и НПЦ «ЭЛВИС» (процессоры серии «Мультикор»). Эти модули ориентированы на импортозамещение в серверном и встраиваемом сегменте.
Критика
Основные недостатки многопроцессорных модулей связаны с высокой стоимостью, сложностью охлаждения и проблемами масштабирования производительности. Закон Амдала ограничивает прирост производительности при увеличении числа процессоров из-за последовательных участков кода. Кроме того, многопроцессорные модули требуют специального программного обеспечения (операционные системы с поддержкой SMP, компиляторы с автоматической параллелизацией), что увеличивает затраты на разработку. В ряде случаев, особенно в облачных вычислениях, более эффективным оказывается использование кластеров из одно- или двухпроцессорных серверов, соединённых высокоскоростной сетью.
Источники
- Intel Corporation. «Intel Xeon Processor Scalable Family Technical Overview». 2020.
- AMD. «AMD EPYC 7002 Series Processors: Architecture and Performance». 2019.
- Hennessy, J. L., Patterson, D. A. «Computer Architecture: A Quantitative Approach». 6th edition, Morgan Kaufmann, 2017.
- «Многопроцессорные системы: архитектура, проектирование, реализация». Под ред. В. В. Воеводина. М.: Изд-во МГУ, 2015.
- Ampere Computing. «Ampere Altra Max: 128-core ARM Server Processor». 2021.
- «Байкал Электроникс». Официальный сайт. Раздел «Продукция». 2023.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →