Крупные IT-компании располагают дорогими «игрушками», которые скрыты от взоров большинства пользователей. Сегодня мы приоткроем завесу тайны и расскажем про систему, которая оптимизирована для работы с искусственным интеллектом.

Задачи ИИ предъявляют высокие требования к вычислительным и сетевым ресурсам, поэтому наш сегодняшний «гость» приятно порадует своей конфигурацией. Встречайте: NVIDIA DGX A100.

Встречают по одежке


Техника безопасности предписывает использовать механический лифт для работы с сервером
NVIDIA DGX A100 — это стоечный сервер, высотой в 6U и массой более 130 килограмм. Сервер даже в коробке способен повергнуть в легкий трепет. Большой корпус и красивый золотистый цвет притягивают взгляды проходящих мимо коллег.

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

Количество портов ввода-вывода на этом сервере зашкаливает
Корпус сервера не открывается сверху. Вместо этого в задней части сервера есть два трея — это составные части сервера, которые содержат «начинку» сервера. Обратите внимание, что винты-фиксаторы треев в шасси окрашены в зеленый цвет, а фиксаторы крышки трея — в черный.

В глаза бросается шесть блоков питания по 3 КВт каждый с возможностью горячей замены. Интересно, что максимальное заявленное энергопотребление — 6.5 КВт. Разгадка проста: блоки питания работают по схеме 3+3, то есть резервирование 2N. Большинство обычных корпусов для GPU предоставляют 4 блока питания и схему 3+1.

На нижнем трее видно десять портов сетевых карт с пропускной способностью до 200 Гбит/с. По умолчанию двухпортовая карта сконфигурирована в режиме Ethernet, а остальные — в режиме Infiniband. Эти сетевые карты используются для объединения нескольких DGX в вычислительный кластер. У нас всего один DGX, поэтому порты не используются.
Один из суперкомпьютеров России, Кристофари, собран из 75 серверов DGX-2, в основе которого лежат графические ускорители предыдущего поколения.
Восемь вентиляторов способны сдуть тебя, %USERNAME%
Передняя панель сервера выглядит ожидаемо для сервера с GPU: много больших вентиляторов. Они способны развивать скорость до 18000 оборотов в минуту, что позволяет эффективно охлаждать богатый внутренний мир сервера. Софт сервера сам управляет скоростью вращения вентиляторов и не предоставляет пользователю возможности вмешаться в этот процесс.
Сперва мы хотели попытаться запустить DGX самостоятельно, но, к сожалению, столкнулись с неожиданной проблемой. Во время пуско-наладочных работ сервер вывел ошибку связи с BMC и раскрутил все вентиляторы до 18 000 оборотов в минуту. При помощи сопровождающего инженера ошибка была устранена, и сервер стал работать в штатном режиме. Даже в процессе стресс-тестирования на такие обороты он больше не выходил.
Фронтальная крышка на месте
Передняя панель закрывается специальной крышкой на магнитных креплениях. Издалека кажется, что на передней панели изображен белый шум, но на самом деле это металл с множеством отверстий, пропускающих воздух.
В ходе тестов было выявлено, что данная крышка не имеет значительного влияния на теплоотвод, вентиляторы сервера отлично справляются со своей работой.
После внешнего осмотра сервер был перенесен на прочный стол и разобран.

Филигранная техника


Специфические коннекторы GPU-трея
Как уже говорилось ранее, сервер состоит из двух треев: CPU и GPU. Каждый трей — это часть сервера, заключенная в свою железную коробку, которая установлена в шасси. Связь между треями, вентиляторами и корзинами на передней панели обеспечивает объединительная плата, установленная в корпусе. В некотором смысле DGX — это классическое blade-шасси, только вместо отдельных серверов (лезвий) устанавливаются части одного сервера.

GPU-трей. Много радиаторов
Вверху находится GPU-трей, занимающий 3U. Он тяжеловат даже для двух человек. На верхней крышке трея также есть предупреждающий знак о тяжести объекта и необходимости работать с ним вдвоем.

В этом трее установлены восемь видеокарт NVIDIA Tesla A100 в модификации 40 GB. Их особенностью является форм-фактор SXM4. Данная версия видеокарты отличается мезонинным исполнением и повышенным тепловыделением: 400 Вт против 300 у PCIe-версии.

Помимо восьми больших радиаторов видеокарт, на трее расположены шесть радиаторов поменьше. Эти радиаторы охлаждают микросхемы, которые реализуют интерконнект видеокарт. Технологии NVLINK и NVSWITCH соединяют восемь видеокарт многосвязной топологией (каждая видеокарта соединена с каждой) с пропускной способностью 600 Гбит/с.

CPU-трей. Здесь тоже много радиаторов
CPU-трей имеет два способа извлечения: полное и частичное.

Во втором случае трей выезжает из шасси чуть больше чем на длину части с PCIe-слотами и фиксируется, а крышка трея открывается вверх. Это позволяет провести работы с сетевыми картами или накопителем для ОС, не извлекая трей целиком.

Со стороны CPU-трей выглядит как обычный 2U сервер без блоков питания. Под большими радиаторами прячется пара процессоров AMD EPYC 7742, суммарно 128 физических ядер или 256 логических. Рядом стоят шестнадцать планок DDR4 с частотой 3200 МГц и объемом 64 ГБ каждая. Суммарный объем оперативной памяти 1 ТБ.

Интересно, что радиаторы процессоров расположены друг за другом, то есть второй процессор охлаждается теплом первого. Тем не менее, с системой охлаждения DGX это выглядит незначительно. Непривычно большие радиаторы заметны и на этом трее. Взаимодействие с GPU-треем создает большую нагрузку на PCIe-мосты, которые тоже требуют охлаждения.

Электронный город
Между слотами находится небольшая плата с максимальной плотностью электронных компонентов. Это выглядит как маленький электронный город. Здесь узнается чип ASPEED, который является «сердцем» BMC-модуля. Помимо этого, здесь есть модули доверенной загрузки, которые обеспечивают безопасность платформы.

Существует «старшая» модификация DGX A100 на 640 ГБ видеопамяти. В ней объем оперативной памяти расширен до 2 ТБ, а также увеличен объем постоянного хранилища.

На этом знакомство с внутренним миром DGX закончено. Давайте посмотрим на него в работе.

Душа титана


Для отображения всех ядер в htop разрешения 203x53 мало
В коробке с DGX лежит флешка, а на флешке — подготовленный образ операционной системы для начала работы. Основой образа является операционная система Ubuntu 20.04.3 LTS с предустановленными драйверами и специальными утилитами.

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

Часть операций производится через утилиту nvsm, консольный интерфейс для nvidia system management. Всего одна команда проверит «теоретическое» состояние сервера:

nvsm show health

Команда проверяет все, до чего может «дотянуться», а именно:

  • наличие всех заявленных PCIe-устройств: NVMe, сетевых карт и видеокарт;
  • использование PCIe 4.0 и максимально доступного количества линий для каждого устройства;
  • топологию видеокарт и доступность всех соседей для каждой видеокарты через NVLINK;
  • количество установленных планок памяти и их P/N;
  • количество логических ядер процессора.

В конце мы получили ожидаемую строчку о полном здоровье платформы.

Health Summary
--------------
168 out of 168 checks are healthy
0 out of 168 checks are unhealthy
0 out of 168 checks are unknown
0 out of 168 checks are informational
Overall system status is healthy

100.0% [=========================================]
Status: healthy

Следующий этап регламента — запуск стресс-теста. Это не только проверит систему в работе, но заодно предоставит нам информацию о максимальном практическом энергопотреблении и температуре на различных компонентах сервера. В этой задаче также помогает утилита nvsm.

nvsm stress-test

Стресс-тест сделан достаточно удобно. Утилита нагружает процессор, видеокарты, оперативную память и постоянное хранилище и начинает отслеживать системные события, температуры, обороты вентиляторов и энергопотребление. Через 20 минут, в конце теста, выводится табличка статистики.

System Resource Metrics
Component      Pre-test       Min            Avg            Max            Unit           
CPU_LOAD       76.65          0.69           87.79          103.12         %              
CPU_TEMP       46.50          46.50          66.61          68.50          C              
DISK_LOAD      0.11           0.00           16.44          37.87          %              
GPU_LOAD       0.00           0.00           84.72          100.00         %              
GPU_TEMP       33.13          33.13          62.49          67.88          C              
MEM_LOAD       0.88           0.88           74.11          89.56          %              
MEM_TEMP       33.75          33.75          36.10          36.75          C              
FANSPEED       4812.09        4812.09        7269.36        7538.64        RPM            
POWERDRAW      1586.00        1586.00        4437.73        4745.00        W              


System stress test successful.
No alerts seen.

Здесь видно, что температура процессоров и видеокарт не превышала 69 градусов, при этом вентиляторы работали чуть меньше, чем в полсилы. Энергопотребление составило 4.7 КВт, что почти на два киловатта меньше заявленного в спецификации. Впрочем, данный стресс-тест не учитывает десяти внешних сетевых карт, да и наша версия DGX не старшая.

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

Мы начали с GeekBench 5 Compute. К сожалению, данный бенчмарк не задействует интерконнект между видеокартами и тестирует исключительно одно устройство за раз. Тем не менее, с его помощью можно сравнить, насколько SXM4-версия Tesla A100 лучше, чем PCIe-версия.
Категория PCIe Tesla A100 40G SXM4 Tesla A100 40G
OpenCL 170137 188380 (+11%)
CUDA 213899 234890 (+10%)
Второй тест, который мы провели, — ai-benchmark, тест производительности, который замеряет скорость обучения и применения различных нейронных сетей на задачах распознавания и классификации. Хотя данный тест использует Tensorflow GPU и даже в логах отмечает наличие интерконнекта между видеокартами, но запускается только на одной видеокарте. Таким образом этот тест показателен только для сравнения разных форм-факторов Tesla A100.
Категория PCIe Tesla A100 40G SXM4 Tesla A100 40G
Inference Score 25177 30158 (+20%)
Training Score 23775 27837 (+17%)
AI Score 48952 57995 (+19%)
В качестве тестирования задач ИИ был выбран MLPerf от MLCommons. На сайте NVIDIA упоминается этот тест, а в турнирных таблицах MLPerf встречаются результаты старшей версии DGX A100 за авторством производителя.

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

На данный момент у нас нет возможности сравнить DGX A100 с сервером с восемью Tesla A100 без интерконнекта, поэтому тестирование MLPerf пока отложено до момента появления тестового стенда с необходимой конфигурацией.

Заключение


NVIDIA DGX A100 — мощный сервер, призванный ускорить решение задач, связанных с искусственным интеллектом. DGX имеет множество сложных технических нюансов и особенностей, но их нельзя прочувствовать на паре общих тестов производительности. Чтобы узреть настоящую мощь этого сервера, нужно «потрогать» его самостоятельно.

Сервер предоставлен компанией Forsite. Forsite — российский производитель суперкомпьютеров и провайдер решений NVIDIA уровня Elite.

Комментарии (30)


  1. ba00
    18.09.2021 13:11
    +7

    А чего не сделали модный тест на количество MH ?


    1. czz
      18.09.2021 14:17
      +9

      1.36 GH/s на Ethereum


      1. ba00
        18.09.2021 17:49
        +2

        А на остальных модных ? А картинки теста ?


        1. vxm9
          24.09.2021 10:32

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

          Хотя майнить на таком чудовище - развлечение очень уж расточительное.


      1. QiQ
        24.09.2021 10:32

        Осталось прикинуть время окупаемости )))


  1. czz
    18.09.2021 14:05

    Подскажите, сколько стоит аренда в день, хотя бы приблизительно?


    1. darkAlert
      18.09.2021 15:24
      +2

      1. czz
        18.09.2021 15:31

        Интересна именно селектеловская цена


        1. Darksa
          18.09.2021 16:06

          Пока идет тестирование — бесплатно. Оставить заявку можно на соответствующей странице.


  1. anonymous
    00.00.0000 00:00


    1. czz
      18.09.2021 15:41
      +7

      Ну это из пушки по воробьям, в этой машине важны не только сами GPU, но и высокоскоростные интерконнекты, благодаря которым у вас почти что общая память на все GPU, в которую можно загрузить 320 ГБ данных.


      1. creker
        18.09.2021 16:02
        +7

        Я бы даже сказал этот интерконнект и есть главная фича подобных платформ. Напихать пачку видюх в корпус и запустить параллельно рендер на них много ума не надо. А вот сделать интерконнект как nvlink — тут нвидия на передовой. Сейчас в целом в индустрии это одна из основных проблема — как все связать быстрой шиной.


    1. Firemoon Автор
      18.09.2021 15:59
      +3

      Я проводил тесты на V-Ray 5 Benchmark, этот «зверь» все же не для рендеринга. Одна 3090 показывает результат лучше.


      1. zzyxy
        18.09.2021 23:05
        +1

        В GA102 в RTX картах гораздо больше FP32 железа, чем в GA100 чипе в картах А100. Поэтому для приложений типа рендеринга RTX3090 действительно будет выигрывать. А для ИИ приложений обычно гораздо важнее FP16 и пропускная способность памяти. Тут уж GA100 сильно выигрывает.

        https://www.techpowerup.com/gpu-specs/nvidia-ga100.g931

        https://www.techpowerup.com/gpu-specs/nvidia-ga102.g930


    1. nidalee
      19.09.2021 10:35
      +2

      Мне лично (сорри!) всегда интересны только 2 теста на железо.

      Как уже написали выше, для ваших тестов DGX не нужен: X264 на такое количество ядер не масштабируется, а видеокарты вообще не задействует.

      Что касается 3D рендера, то обьединение карт "в одну" как правило в таких задачах снижает производительность, поэтому рендерится графика просто в несколько потоков, по тайлу на карту. Весь смысл DGX при этом теряется.


  1. anonymous
    00.00.0000 00:00


  1. Aleksandr-JS-Developer
    18.09.2021 17:27

    И сколько такой зверь съест зеленых у компании, которая решит обновить парк?


    1. tmin10
      18.09.2021 17:48

      Цена вроде от $199,000


  1. akaAzazello
    18.09.2021 18:01
    +10

    >>Восемь вентиляторов способны сдуть тебя, %USERNAME% .. Они способны развивать скорость до 18000 оборотов в секунду, что позволяет ...

    Не то, что сдуть username'а, а отправить в космос с поверхности Марса - скорость на концах лопастей, как я понимаю, 80мм вентиляторов - порядка ~4.5км/с, а у Марса первая космическая порядка ~3.5 км/с :)

    Если без иронии, то любом случае, 18к об/мин для вентилятора/импеллера - цифры из мира авиамоделирования. И на постояном базисе - может, десятками суток - потрясающие цифры!


    1. aMster1
      18.09.2021 19:59

      Интересно, а как часто их требуется менять?


    1. Firemoon Автор
      18.09.2021 20:16
      +3

      Да, Вы правы, мы случайно чуть-чуть ускорили охлаждение сервера. Речь, кончено же, идёт про 18 000 оборотов в минуту. Поправил в тексте.


  1. Akito7
    18.09.2021 22:49

    Расскажите, а для каких конкретно задач был приобретен такой сервер? Что классифицировать и идентифицировать надо было?


  1. robert_ayrapetyan
    19.09.2021 07:02
    +3

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


  1. Fodin
    19.09.2021 07:32

    Порадовала максимальная загрузка процессора в 103.12%. Немножко даже перегружен был. Умудрялся операции между тактами выполнять.


    1. vanxant
      19.09.2021 11:08

      Дровописы Нвидии давно освоили эту магию. Правда, эффект исчезает, если переименовать исполняемый файл.


    1. Oxyd
      19.09.2021 17:29
      +1

      Ну так есть-же старая байка про IBM-овские мейнфреймы и около того...

      Если на вашем PC сервере загрузка процессора больше 60%, у вас проблемы.

      Если на вашем сервере AS/400 загрузка процессора меньше 100%, у вас проблемы... Вы зря потратили деньги.


  1. proton17
    19.09.2021 23:20

    Заметил на скрине матплаты ПЛИС Altera MAX10. Мне, как человеку далекому от серверов, но близкого к ПЛИС интересно ее назначение, может кто подскажет?


    1. creker
      19.09.2021 23:44

      Скорее всего управляет вентиляторами, сенсорами и в целом менеджит платформу. Для серверных материнок это вполне стандартная штука.


  1. yamabusi
    23.09.2021 22:21
    +1

    А когда-нить такие штуки будут умещаться буквально в кармане.)


    1. Dvlbug
      25.09.2021 20:08

      Сомнительно, уже уперлись в физические ограничения. Да и зачем такие мощности в кармане?