Платформы-компаньоны вычислений на графических процессорах

07.10.2022 | Серверы

Центральные процессоры (CPU) - универсальный инструмент выполнения самых разнообразных задач. Графические процессоры (GPU) по своей природе больше подходят под параллельные вычисления - идеально для компьютерной графики и машинного обучения. Потому и наблюдаем опережающий рост спроса на GPU-вычисления, что искусственный интеллект входит в повседневную жизнь: распознавание изображений и речи, навигация, умный поиск, персонализация онлайн-предложения, сервисные чат-боты. По оценкам McKinsey, темпы развития полупроводниковой индустрии, обслуживающей AI, впятеро выше non-AI.

Основные задачи искусственного интеллекта - обучение и инференс: подготовка моделей для приложений на массивах имеющихся данных и работа уже обученной нейронной сети на конечном устройстве. Согласно тем же подсчетам McKinsey, к 2025 году затраты на инференс в дата-центрах вдвое превысят затраты на тренировку нейросетей, а спрос на периферийные инференс-решения будет втрое больше объема рынка оборудования для обучения.

Помимо задач искусственного интеллекта, GPU эффективнее CPU в анализе данных, математических расчетах, моделировании, рендеринге, отрисовке игр и спецэффектов кино.

Производительность большинства обслуживающих приложений хорошо масштабируется по GPU, что породило отдельный класс рабочих станций и серверов с несколькими графическими процессорами. Платформы multi-GPU доминируют на рынке - из-за плотности и энергоэффективности вычислений.

Создатели базовых платформ для GPU-серверов ориентируются на NVIDIA – лидера графических разработок. Наиболее полную картину дает каталог квалифицированных NVIDIA систем. В обустройстве вычислителей на графических процессорах есть общая логика. Обойдемся выборочными примерами.

Профессиональные и пользовательские акселераторы

NVIDIA поставляет графические процессоры многочисленным производителям игровых видеокарт, но сама проектирует линейки акселераторов для рабочих станций и серверов. Профессиональные визуальные вычисления в задачах искусственного интеллекта,  промышленного проектирования или создания спецэффектов требуют подходящих программно-аппаратных средств. Особенно, когда речь идет о масштабировании нагрузок.

К примеру, акселераторы RTX A6000 и RTX 3090 сделаны на одном процессоре GA102 поколения Ampere. Но у A6000 48GB памяти ECC (против 24GB non-ECC), термопакет 300 ватт (против 350-450 ватт) и толщина два слота (против трех). RTX A6000 охлаждается продольно, с использованием одного активного элемента центробежного типа (турбины), тогда как RTX 3090 оснащены вентиляторами с боковым выдувом. Под плотную набивку серверов в дата-центрах NVIDIA рекомендует A40 – аналог A6000, тоже двухслотовый, но с пассивным охлаждением.

Если в рабочую станцию или сервер надо поставить несколько графических акселераторов, с бытовыми видеокартами это сделать сложно физически.

AMD вместо Intel

Многие годы GPU-серверы традиционно делали на интеловских платформах, хотя AMD уже пять лет предлагает серверному рынку передовые технологические решения. Консерватизм производителей сильно пошатнул выпуск самой NVIDIA два года назад сервера DGX A100 – универсальной системы под задачи AI с восемью графическими ускорителями A100 общей производительностью 5 петафлопс. Это не первый сервер от NVIDIA, но впервые в своей практике компания выбрала центральные процессоры AMD, не Intel (два AMD EPYC 7742). Появилось и решение попроще - станция для рабочих групп DGX Station A100 на четырех акселераторах A100 и одном AMD EPYC 7742.

Интересы AMD и NVIDIA сошлись. Процессоры EPYC были и остаются ключевым компонентом для высокопроизводительных вычислений (HPC). NVIDIA с этим согласилась: «Наши новые графические процессоры A100, которые мы используем в DGX A100, обеспечивают огромный скачок производительности и возможностей. Чтобы они снабжались данными, нам требовались быстрые центральные процессоры с максимально возможным количеством ядер и PCI-линий. Используемые нами процессоры AMD [EPYC 7742] имеют по 64 ядра, много линий PCI и поддерживают PCIe 4.0».

Дело не в цене, а в охвате возможностей. Сравним AMD EPYC Milan и Intel Xeon Ice Lake:

 

AMD EPYC

Intel Xeon

Ядер

8-64

8-40

Потоков

16-128

16-80

Техпроцесс

7нм

10нм

Базовые частоты (ГГц)

2.0 – 3.7

2.0 – 3.6

Максимальные частоты (ГГц)

3.45 – 4.1

2.6 – 3.6

Термопакет

155Вт – 280Вт

105Вт – 270Вт

Кэш L2

512КБ

10МБ – 50МБ

Кэш L3

64МБ – 256МБ

12МБ – 60МБ

DDR4 (МГц)

3200

3200

Память

4TB

6TB

Линий PCIe 4.0

128

64

Один процессор AMD EPYC обслуживает 128 линий PCIe 4.0. Один Intel Xeon – 64. Два процессора AMD EPYC - 160 (остальные из 2 х 128 уходят на межпроцессорные соединения). Два Intel Xeon SP 3rd Gen Ice Lake –128 линий. Разумеется, подключение периферийных устройств можно масштабировать с помощью коммутаторов PCIe, но это усложняет схемотехнику базовых материнских плат и удорожает производство.

Многоядерность CPU не помешает там, где есть смешанные нагрузки, в многозадачной и многопользовательской среде. Линии PCIe нужны периферийным устройствам, главным образом, графическим акселераторам. Превосходство по ядрам CPU и числу доступных линий PCIe (помимо GPU есть и другие потребители: NVMe SSD, сетевые карты, акселераторы FPGA) дает AMD преимущество над Intel.

Примеры платформ

Мир GPU-решений многообразен, а выбор всегда субъективен. Ограничимся примером ходовых платформ ASUS на процессорах AMD – на одном вендоре понятнее логика продуктовой вертикали. Начнем с настольных рабочих станций.

С выходом линейки AMD Ryzen Threadripper PRO ушла потребность в двухпроцессорных рабочих станциях Intel Xeon для целых классов настольных приложений. AMD отогнал конкурента от стола разработчика все тем же: многоядерностью, высокой тактовой частотой, 128 линиями PCIe 4.0 из процессора. У старшего AMD Ryzen Threadripper PRO 5995WX 64 ядра с базовой частотой 2.7ГГц и максимальной 4.5ГГц.

На материнской плате ASUS WS WRX80E-SAGE SE WiFi  семь слотов PCIe 4.0 x16.

Сюда становятся четыре акселератора двойной толщины, вплоть до NVIDIA A100, или семь однослотовых  - как NVIDIA A2. Все это хозяйство надо разместить в просторном корпусе, запитать и отвести тепло, что само по себе является нетривиальной задачей. Но результат того стоит.

На такие решения есть спрос от создателей мультимедийного контента, разработчиков игр, научных лабораторий.

Стоечные варианты

Самый популярный формат GPU-сервера стоечного монтажа – платформа 2U под 8 однослотовых или 4 двухслотовых акселератора – как ASUS ESC4000A-E11. Односокетная платформа AMD EPYC Rome/Milan – красивое и экономичное решение, многократно апробированное на практике. «Купейная» компоновка обеспечивает хорошее охлаждение GPU и простое обслуживание сервера.

На блок-схеме базовой материнской плате видно, какую свободу получает разработчик платформы на AMD EPYC, когда линий PCIe 4.0 из процессора хватает всем мыслимым потребителям, без дополнительной коммутации и усложнения дизайна.

Для тех, кому и этого мало, есть платформа 4U под 8 двухслотовых GPU, ASUS ESC8000A-E11 – на двух процессорах AMD EPYC Milan.

Платформы свободы разработчика

Подобные серверы – мощный инструмент разработки, когда можно не только распоряжаться программными сборками под прикладные задачи, но масштабировать производительность и модифицировать аппаратное наполнение. Кто-то выбирает GPU из линеек NVIDIA, другим подходят ускорители AMD Instinct MI100, есть пользователи отладочных плат Xlinx FPGA.

Рынок дрейфует к децентрализации вычислений (в частности, их переносу с CPU на периферийные устройства) и предъявляет спрос на соответствующие аппаратные решения.