Тест 80-ядерного ARM-процессора Ampere Altra: результаты и сравнение с AMD EPYC
Под крышкой Ampere Altra — 80 ядер с частотой 3.0 ГГц при TDP в 210 Вт. Подобных характеристик не предлагает ни один крупный вендор. Но какую производительность это дает на практике? В тексте — результаты сравнения процессора с AMD EPYC и выводы о потенциале такого решения для дата-центров. С фото!
Привет! Меня зовут Максим, я работаю тестировщиком оборудования в Selectel Lab. Недавно взял на тест сервер GIGABYTE E252-P30 с 80-ядерным процессором Ampere Altra Q80-30. И решил сравнить его с наиболее близким по характеристикам AMD EPYC 7513. В тексте делюсь основными результатами и приглашаю протестировать процессор бесплатно.
Используйте навигацию, если не хотите читать текст целиком. Главные результаты тестов описаны в выводах.
Почему взяли ARM-процессор на тест?
Ранее в дата-центрах Selectel уже были представители семейства ARM — так, у нас есть серверы с «малинками» и процессорами M1. Но полноценно серверных ARM еще не было, хотя архитектура многообещающая. Например, Ampere Altra Q80-30 показывает хорошие результаты в высокопроизводительных вычислениях и при создании облачных платформ.
Лидером по использованию ARM-чипов в инфраструктуре является Amazon: компания планирует перевести часть облачных сервисов на эту архитектуру к 2025 году. Также производством процессоров для открытого рынка занимаются Ampere и Huawei. К слову, AMD тоже пытался последовать тренду, но пока не достиг успеха.
Большинство платформ — JVM, V8, PVM и другие — портированы на ARM, а «экосистема» свободного ПО стремительно развивается под архитектуру. Но это все на словах — давайте посмотрим, на что способен ARM на самом деле.
Собираем тестовый конфиг
Кроме самого процессора, в тестовую конфигурацию входят:
- материнская плата GIGABYTE MP32-AR1-00,
- 16 плашек ОЗУ по 16 ГБ (Micron DDR4 3200 МГц ECC),
- 2 SSD-накопителя Micron_5300 на 480 ГБ,
- NVMe-диск на 1 ТБ M.2 SSD (GIGABYTE GP-AG41TB).
Также для проверки работы PCIe-линий при полной загрузке подключены три видеокарты Nvidia TESLA T4.
Собранный для тестов конфиг уже трудится в стойке, в таком виде мы его и сфотографировали. Далее в тексте предлагаем фото другой сборки с ARM-процессором — в 1U-корпусе.
В тестируемой конфигурации компактный edge-сервер в 2U-шасси малой глубины (439 × 86 × 449 мм). Для удобства в переднюю панель выведена дисковая корзина на шесть SFF-накопителей (SAS-3/SATA-3) с поддержкой горячей замены, а также IO-панель материнской платы и все слоты PCI Express.
План тестирования
В Selectel Lab тестируем железо не только для того, чтобы сравнивать заявленные характеристики с реальностью. Нам важно выяснить, насколько тестируемые платформы и серверные комплектующие способны встроиться в общую систему дата-центров Selectel. На потенциальную конфигурацию должны хорошо накладываться существующие автоматизации для выделенных серверов и требования по энергоэффективности.
Сформировали следующий чек-лист для тестирования:
- С помощью AI-Benchmark проверить скорость, энергопотребление и требования к памяти для ключевых алгоритмов искусственного интеллекта.
- Сделать тесты в Geekbench5.
- Провести классический стресс-тест видеокарты с помощью gpu-burn.
Оценить показатели скорости кодирования и декодирования видео через программу ffmpeg NVENC.
- Протестировать в связке с CUDA Toolkit.
- Оценить энергопотребление и температурный режим — для получения нужных графиков мы использовали Grafana и Prometheus.
С чем будем сравнивать
Для сравнения с Amper Altra выбрали два процессора AMD EPYC 7513 — 64 ядра в сумме, базовая частота 2,6 ГГц (до 3.65 ГГц в режиме Turbo CORE). Это достойный конкурент, который входит в топ-3 по результатам бенчмарков в single-core режиме. Это наш собственный рейтинг процессоров, которые были на тесте в Selectel Lab. Полный список можно посмотреть в нашем профиле Geekbench5.
Кроме того, цены на сравниваемые процессоры приблизительно равны.
Подготовка операционной системы и ПО
ARM-архитектура поддерживает 24 дистрибутива, мы в Selectel предоставляем четыре из них — Astra Linux, Debian, CentOS и Ubuntu. В методиках испытаний использовали Ubuntu 22.04.01 LTS 5.15.0-50-generic aarch64 — это наиболее свежий дистрибутив под архитектуру aarch64.
Здесь никаких сюрпризов: операционная система установилась без проблем, с драйверами для видеокарт трудностей не возникло. Установка cuDNN 11.7, NVIDIA-SMI 515.65.01, libcudnn8 прошла корректно.
Переходим к результатам тестирования.
Результаты Geekbench5
В целом, процессор Ampere Altra близок по характеристикам к флагманскому AMD EPYC.
На графике ниже — сравнение проведенных тестов Ampere Altra Q80-30 и AMD EPYC 7513 в Geekbench 5.
В режиме Single-core AMD имеет большое преимущество перед ARM-процессором. Но все меняется, если тестировать в режиме Multi-core:
Видно, что ARM-процессор сильно «выбивается» вперед по всем критериям. Особенно это заметно в параметрах, которые касаются параллелизации.
Для параллелизации справедливо правило: чем больше физических ядер, тем лучше. Поэтому в ряде критериев — например, гауссовском размытии, HDR, Camera и других — ARM лидирует. Впрочем, видите сами: вся магия происходит именно в многопоточном режиме.
Тестирование GPU
Не все из планируемых тестов графических процессоров удалось провести из-за особенности архитектуры ARM. Тот же aarch64 TensorFlow довольно сложно собрать. В первую итерацию тестирования на подобное времени не было, поэтому отложили эту задачу на будущее — провести тест GPU через AI-Benchmark не удалось. Geekbench 5 же не поддерживает на данный момент бенчмарк CUDA и OpenCL GPU под aarch64. Зато есть результаты кодирования и декодирования через ffmpeg.
Результаты декодирования видео
Мы хотели посмотреть, как проявят себя процессоры на данных конфигурациях. Также выяснить, что работает «из коробки», без вмешательств в ПО. Для тестирования взяли 4K-видео размером 618 МБ.
Команда на выполнение декодирования:
Стресс-тест процессора
Справочная информация по политикам работы процессора
Для стресс-теста ARM-процессора использовали несколько режимов политик работы процессора — ondemand, performance. Эти режимы есть и на х86-архитектурах.
Ondemand
Режим установлен по умолчанию. Он отвечает за пошаговое повышение работы частоты и напряжения CPU в зависимости от нагрузки. Каждые 20~200 мс замеряется нагрузка на CPU, общая или системным пользователем. Если нагрузка на текущей частоте более 95%, частота повышается. Если менее 20% — частота понижается на один шаг.
Например, если доступные частоты — 800-2000-3000 МГц, при загрузке CPU на 95% частота переходит с 2000 на 3000 МГц. Частота замера и процент загрузки перехода для всех режимов выставляются при компиляции ядра.
Performance
Название режима говорит само за себя. В нем процессор выдает максимально доступную частоту, максимум своей производительности.
Существуют и иные режимы, в которых процессор ведет себя по-другому. Но мы их не тестировали, так как хотели изучить стабильную работу процессора и его максимальные возможности.
Возможные режимы работы процессора:
- powersave — режим сохранения энергии: минимум производительности, максимум энергоэффективности.
- shedutil — похож на ondemand, но умеет использовать данные планировщика задач CFS. За счет этого действует более «разумно». но не работает с отличными от CFS планировщиками — например, с muQSS Коливаса.
- userspace — работа процессора на заданной пользователем частоте.
- conservative — похож на режим ondemand, но показатель для перехода частоты в большую или меньшую сторону ниже — обычно 20%. Например, доступно 500-1000-2000 МГц, работаем на 500 МГц. Нагрузка возросла на 30% — переходим на 1000 МГц.
Чтобы выставить режим или политику работы процессора в Ubuntu, достаточно ввести следующую команду:
Результаты стресс-теста
Результаты стресс-теста любопытные: температурные графики не менялись, хотя частота ядер в первом тесте была меньше, чем во втором.
Первый тест начался с 12:50 до 13:40 в режиме ondemand. Повторный стресс-тест c 13:40 до 14:50 в режиме performance. При этом энергопотребление не изменилось. Как можно увидеть, в режиме ondemand процессор работает не на максимум и скидывает частоту на некоторых ядрах.
Температурный режим и энергопотребление
Как уже показали графики, тепловой пакет во время стресс-теста процессор поддерживает очень хорошо. Изменение частоты работы не влияет на показатели. Энергопотребление процессора же составило 150 Вт на пике стресс-теста при паспортном TDP — 210 Вт.
Выводы
Базовые тесты Ampere Altra показали, что процессор эффективен на электропотребление. С учетом этого и цены, он экономически выгоден для дата-центра.
Для клиента же Ampere Altra — возможность оценить преимущества ARM-архитектуры в высокопроизводительных вычислениях. Кроме того, конфигурация с новым ARM стоит дешевле, чем сборка тем же AMD EPYC.
Мы продолжим тесты новой платформы — приглашаем к тестированию и вас. Оставьте заявку в Selectel Lab и протестируйте ARM-процессор для решения своих задач.
Читайте также:
Прочел статью и поймал себя на мысли, что ощущения, как 15 лет назад, когда отыскивал 200 рублей что бы добыть себе журнал «хакер», читал его, не понимая половину, но было до жути интересно:)
За это спасибо!
Спасибо за комментарий 🙂
Рады, что вы смогли найти для себя что-то неизведанное и интересное!
Очень хорошие показатели получились!
и очень много обещающие, думаю скоро все на такое перейдут
PAC-MAN потянет?
и червячков
Спасибо, держите вкурсе
На какие сферы применения планируются данные сервера? виртуализация работает? можно использовать как VPS ноду?
Комментарий недоступен
да там как я понимаю, целая проф команда может с одного такого системника в контру поиграть
На таком проце можно было взять Always free у oracle, можно было держать ванильный майнкрафт в 200 слотов без напряга.
Да, виртуализация работает, есть поддержка ARM и можно использовать как VPS. Вопрос эффективности еще изучаем. Следите за публикациями в нашем блоге 🙌