Знакомство с Ampere Altra Q80-30: не умением, так числом?

 

(До-)историческая справка

Путь Arm на серверный рынок оказался долгим и тернистым — и он всё ещё не закончен. Достаточно вспомнить заметные разработки и их в основном печальный конец. Например, 10 лет назад Calxeda анонсировала первые серверные Arm-платформы на базе Cortex-A9, которые были скорее компактными кластерами — такие системы на базе современных SoC и одноплатников создавала, к примеру, Bamboo — и которые, по задумке компании, могли бы пригодиться гиперскейлерам. Через год после анонса уже сама Arm громко заговорила о лицензировании своей архитектуры для серверных систем.

 Ampere Altra Q80-30

Ampere Altra Q80-30

Ещё через год Calxeda закрылась, но о планах по развитию Arm-чипов для серверов начали говорить уже именитые разработчики и производители. Правда, планы оказались по большей части всего лишь планами, несмотря на вложенные в разработки средства. AMD на два года задержала A1100 и массовый выпуск не наладила. Qualcomm делала-делала Centriq 2400 (и даже анонсировала следующее поколение, Firetrail) — да и забросила. А потом и вовсе купила новичка на этом рынке, компанию Nuvia, но в серверный сегмент пока соваться, судя по всему, не очень хочет.

Наследие проекта Broadcom Vulcan оказалось наиболее живучим — попав в руки Cavium, а затем и Marvell, оно не только успело развиться, но и достигло некоторых успехов в HPC и облаках. Увы, чипы ThunderX, дотянув до третьего-четвёртого поколения, оказались в одночасье заброшены Marvell, которая тоже хотела производить их для гиперскейлеров. Серия HiSilicon Kunpeng активно используется в оборудовании и облаке Huawei, но дальнейшая их судьба под вопросом в связи с санкциями США.

 GIGABYTE E252-P30

GIGABYTE E252-P30

Все эти события подорвали доверие к Arm как к серверной платформе. Как нам сказал один из крупных серверных вендоров, однажды обжегшись, компания стала очень аккуратно относиться к «нетрадиционным» разработкам. При этом в более узких нишах уже можно говорить об успехах. В сегменте HPC прекрасно показал себя Fujitsu A64FX, который стал основой для Fugaku. Тут, правда, в очередной раз стоит отметить, что это узкоспециализированный чип, концептуально похожий скорее на Xeon Phi, чем на обычные CPU.

Да и энергоэффективным Fugaku никак не назовёшь, хотя именно на эту особенность Arm-решений упирают остальные производители. У китайской Phytium, судя по всему, всё тоже не так плохо. А уж в сегменте гиперскейлеров всё вообще очень интересно. Платформа с третьим поколением Arm-процессоров Amazon Graviton сумела обогнать в некоторых аспектах решения AMD и Intel. Alibaba тоже движется в эту же сторону. Но всё это чипы, созданные под нужды конкретной компании, и просто так купить их нельзя. Кто остаётся?

Ampere Computing

Есть как минимум ещё один неупомянутый проект серверных Arm-процессоров времён Calxeda — X-Gene от Applied Micro. Эта компания в результате ряда сделок стала основой для Ampere Computing, а третье поколение чипов X-Gene — для Ampere A1/eMAG. Зато Ampere получила не только наработки, но и часть команды, имеющей опыт в разработке CPU. В прошлом году компания анонсировала 80-ядерные Ampere Altra (кодовое имя Quicksilver), а ещё через несколько месяцев — и 128-ядерные Ampere Altra Max (Mystique).

Оба варианта изготовлены по 7-нм техпроцессу и совместимы на уровне процессорных разъемов. Новинки появились в Equinix Metal и у ряда гиперскейлеров, включая облако от Oracle, которая вложилась в Ampere пару лет назад. На уровне платформ компанию в первую очередь поддержали Wiwynn и GIGABYTE. Последняя недавно анонсировала уже вторую волну Altra-серверов, впрочем, отличающуюся от первой не столь уж существенно. В следующем году Ampere грозится представить процессоры уже с собственными 5-нм ядрами Siryn, которые, в частности, достанутся Microsoft и Tencent.

Время для вывода на рынок новой платформы в целом оказалось не слишком удачным из-за пандемии коронавируса. С другой стороны, упомянутые клиенты — это опять же гиперскейлеры и облака, на которых Ampere открыто ориентируется и у которых своя экономика и свои цепочки поставок. Более того, Ampere подружилась с NVIDIA и открыла референсную платформу Mt.Jade для OCP. Тем интереснее дальнейшая судьба компании, поскольку неоднократно приходилось слышать мнение, что создавалась она ради продажи какому-нибудь игроку покрупнее.

Ampere Altra

Процессоры Ampere Altra базируются на ядрах Arm Neoverse N1, представленных в начале 2019 года и ориентированных именно на инфраструктурные решения. Сама компания называет архитектуру ARMv8.2+, поскольку часть возможностей портирована из более новых наборов (до v8.4). В частности, это защита от уязвимостей класса Meltdown/Spectre, которая в серверных системах просто необходима. При этом, по словам Arm, производительность Neoverse N1 (Ares) может быть в 2,5 раза выше, чем у ядер предыдущего поколения (Cosmos).

Каждое ядро Altra содержит по 64 Кбайт кеша L1i и L1d, а также 1 Мбайт L2. Между собой ядра и общий для всех L3-кеш (System Level Cache) объёмом 32 Мбайт объединены когерентным меш-интерконнектом Arm CoreLink CMN-600. CMN позволяет объединить до 64 групп, по 2 ядра в каждой, что мы и видим в старших Altra Max. К CMN же подключаются контроллеры памяти и PCIe 4.0. Причём Ampere не практикует «налог на память», то есть эта подсистема одинакова для всей серии Altra. С PCIe ситуация такая же.

Всего доступно 8 каналов DDR4-3200 ECC в режиме до 2DPC и с поддержкой модулей UDIMM/RDIMM/(3DS)LRDIMM. Должны быть активны минимум 4 канала, а суммарный объём RAM на одно процессорное гнездо составляет до 4 Тбайт. Линий PCIe 4.0 предлагается аж 128, с возможностью бифуркации вплоть до x2. Половина линий поддерживает CCIX. В двухсокетных системах суммарно доступно 192 линии, так как по два x16-интерфейса с каждой стороны отводятся для CCIX-связи между CPU. Это напоминает подход AMD, хотя EPYC с их четырьмя x16-линками явно лучше по последнему параметру.

В состав Altra также входят два чипа Arm Cortex-M3, ответственных за функции безопасности, управления, мониторинга и взаимодействия с остальной платформой. Процессоры изготавливаются на TSM по 7-нм техпроцессу FinFET. Они имеют упаковку FCLGA-4926 (77 × 67 мм) — и это важное отличие от немногочисленных конкурентов, поскольку сокетное исполнение несколько упрощает подбор CPU и обслуживание платформы, что может быть важно для ряда заказчиков.

Технические характеристики Ampere Altra
Модель Q80-33 Q80-30 Q80-28 Q80-26 Q72-30 Q64-33 Q64-30 Q64-26 Q64-22 Q32-17
Ядра, шт. 80 72 64 32
Частота (Base), ГГц 3,0 2,8 2,6 2,4 2,8 3,0 2,8 2,4 2,0 1,5
Частота (Max), ГГц 3,3 3,0 2,8 2,6 3,0 3,3 3,0 2,6 2,2 1,7
TDP, Вт 250 210 185 150 195 220 180 125 95 65
PCIe 128 линий PCIe 4.0
Память 8 каналов DDR4-3200
Рек. цена $4 050 $3 950 $3 810 $3 700 $3 590 $3 810 $3 480 $3 260 $3 090 $800

В семействе Ampere Altra сейчас доступно 10 моделей CPU с числом ядер от 32 до 80, c базовой частотой от 1,5 до 3,0 ГГц, максимальной частотой от 1,5 до 3,3 ГГц и TDP от 65 до 250 Вт. Однако воспринимать эти цифры надо иначе, чем обычно. Если x86-процессоры при повышении нагрузки на ядра снижают их частоту, стараясь уложиться в заданный уровень потребления, то Altra, напротив, удерживает одинаковую частоту что для одного, что для всех ядер в независимости от нагрузки, а меняется при этом потребление.

 Изображение: Ampere Computing

Изображение: Ampere Computing

Заявленный уровень TDP указывает лишь на усреднённое пиковое потребление. Иначе говоря, в подавляющем большинстве нагрузок процессор работает на заявленной максимальной частоте, лишь в некоторых из них откатываясь к базовой. Но и в этом случае разница в частотах невелика. При этом фактический уровень TDP, как правило, заметно ниже заявленного, хотя всё это вовсе не значит, что процессор не скидывает частоту (чаще резко вниз) в периоды простоя или низкой нагрузки.

 Изображение: Ampere Computing

Изображение: Ampere Computing

Вкупе с отсутствием SMT всё это позволяет Ampere говорить о стабильной производительности CPU, что важно для облачных нагрузок. Но не только — предсказуемость работы нужна, например, и для периферийных вычислений. Собственно говоря, именно такая односокетная система и попала к нам на тестирование от дистрибьютора 3Logic вместе с инженерным образцом процессора Altra Q80-30 (80C/80T, 2,8/3,0 ГГц, 32 Мбайт L3, TDP 210 Вт).

Обзор сервера GIGABYTE E252-P30

E252-P30 — это модель первой волны Altra-систем GIGABYTE, основанная на референсной односокетной платформе Mt. Snow. На базе этой платформы есть несколько вариантов систем, но в данном случае мы имеем дело с компактным edge-сервером в 2U-шасси малой глубины: 439 × 86 × 449 мм. Для удобства использования на переднюю панель выведены не только дисковая корзина на шесть SFF-накопителей SAS-3/SATA-3 с поддержкой горячей замены, но и IO-панель материнской платы, а также все слоты PCIe.

Технические характеристики GIGABYTE EP252-P30 (Rev. 1.00)
CPU 1 × Ampere Altra (FCLGA4926)
Память 16 × (2DPC) DDR4-3200 ECC; до 4 Тбайт суммарно; (L)RDIMM
Сеть 2 × 1GbE Intel I350-AM2; 1 × 1GbE Realtek RTL8211 (BMC LAN); 3 × RJ-45
Накопители 6 × SAS-3/SATA-3; 2 × M.2 22110 (PCIe 4.0 x4)
Контроллер CRAO338 (LSI SAS3008); RAID 0/1/1E/10
Порты 4 × USB 3.0, 1 × DB-9, 1 × D-Sub
Разъёмы 4 × SlimSAS (PCIe 4.0 x4), TPM 2.0
Расширение LP: 2 × PCIe x16 (PCIe 4.0 x16), 3 × PCIe x16 (PCIe 4.0 x8), 1 × PCIe x8 (PCIe 4.0 x8)
1 × OCP 2.0 (PCIe 3.0 x16, занят CRAO338)
Индикаторы Питание, состояние, 2 × сеть, накопители, 2 × ID
Управление ASPEED AST2500; AMI MegaRAC SP-X
Размеры 2U; 439 × 86 × 449 мм
Масса н/д
Питание 2 (1+1) × БП: 100-240 В, 50-60 Гц, 800 Вт, 80+ Platinum
Охлаждение 4 × 80 × 80 × 38 мм
Условия эксплуатации t° 10-30 °C; отн. влажность 8-80% (без конденсата); до 3050 м над у. м.
Цена $7 925 (Q80-30 + 64 Гбайт RAM)
Гарантия 3 года

Разъёмов тут не так уж много: три USB 3.0, пара 1GbE-портов (Intel I350-AM2), один 1GbE-порт для BMC (ASPEED AST2500), VGA-выход и COM-порт. Тут же находится ID-индикатор, совмещённый с кнопкой, который продублирован на левом «ушке», где располагаются ещё и кнопки питания и сброса (тоже с индикацией), индикаторы активности накопителей и обоих сетевых интерфейсов, а также общего состояния системы. В общем, всё как обычно.

А вот такой богатый набор слотов PCIe 4.0 видеть в подобной системе уже непривычно. Их тут сразу шесть штук: пять x16 и один x8 — все для низкопрофильных карт. Впрочем, только два из них предоставляют x16-подключение, а остальные довольствуются восемью линиями. Тем не менее на самой плате есть ещё два x4-слота M.2 2210 и четыре SlimSAS-коннектора по x4 каждый.

Формально есть и мезонин OCP 2.0 (PCIe 3.0 x16), но он занят RAID-контроллером CRAO338 (LSI SAS3008) с поддержкой RAID 0/1/1E/10. Именно его в первую очередь лишились Arm-системы GIGABYTE второй волны. Также на плате есть колодка для модуля TPM 2.0 и, наконец, процессорный разъём с поддержкой 80-ядерных Ampere Altra, который окружён 16 слотами для модулей DIMM DDR4-3200.

Питается вся система от двух (1+1) БП FSP800-20FM мощностью 800 Вт каждый с сертификацией 80+ Platinum, а за охлаждение отвечают четыре высокооборотных вентилятора Nidec Ultraflo (80 × 80 × 38 мм). Все они находятся на задней панели и поддерживают горячую замену без использования инструментов. Сервер рассчитан на работу при температурах от +10 до +30 °С и относительной влажности от 8 до 80 % (без образования конденсата).

О платформе управления системой, как ни странно, рассказывать практически нечего — это совершенно обычный и стандартный AMI MegaRAC SP-X. Но… это на самом деле показатель очень большого прогресса в развитии серверных Arm-систем в целом. Привычные веб-интерфейс, iKVM, UEFI и настройки позволяют не только комфортно работать с ней, но и интегрировать её в системы управления ЦОД.

Тут, конечно, стоит оговориться, что пока GIGABYTE довольно часто выпускает обновления прошивок, меняя что-то по мелочи то тут, то там и добавляя или удаляя какие-то возможности. Однако всё это не идёт ни в какое сравнение с тем, что было раньше. Никакой особенной подготовки уже не требуется — берёшь AArch64-образ популярного дистрибутива, спокойно загружаешься и устанавливаешь ОС и ПО.

Конфигурация

Собственно говоря, это и было сделано. На накопитель GIGABYTE Aorus (M.2, PCIe 4.0 x4) GP-AG4500GB с ext4 была установлена Ubuntu Server 21.10 (стандартное ядро Linux 5.13.0-20-generic), а на GP-AG41TB c xfs развёрнута тестовая среда Phoronix Test Suite 10.6.1. Настройки ФС оставлены по умолчанию, а в самой ОС только cpu_governor был переключён в performance, а автообновление было отключено. Важно отметить, что, хотя общая поддержка Arm-платформ в современных дистрибутивах есть, оптимизаций чаще всего ждать не стоит.

В частности, оказалось, что штатное ядро не до конца «знакомо» Ampere Altra и, например, в принципе не позволяет включить Boost, а сама Ampere предлагает патчи только для Linux 5.10. К счастью, в последнем обновлении BIOS (F18g) эта опция в настройках CPCC пропала в принципе, и наш процессор по умолчанию работал на частоте 3,0 ГГц. Режим LPI был оставлен, чтобы процессор мог уходить в «спячку».

Компанию CPU составили восемь (1DPC) 16-Гбайт модулей RDIMM DDR4-3200 (Samsung M393A2K43DB3-CWE). В настройках можно поделить память на один, два или четыре NUMA-домена, но для всех тестов использовался только один. В BIOS также есть любопытная опция X86 Emulator Mode, однако никакой внятной документации или хотя бы простого описания для неё нет. Оставим её изучение на будущее.

Бенчмарки

Популярные комплексные бенчмарки оказались не очень полезными. В Preview-версии Geekbench 5.4.3 в однопоточном тесте система набрала 885 баллов — ближайший к этому результат демонстрирует Intel Xeon Gold 6126. Увы, общий рейтинг для всех топовых систем сейчас начинается с отметки в 1775 баллов. В многопоточном тесте, где тестовый процессор набрал 47270 очков, картина обратная — в чартах CPU ближайший конкурент в лице пары AMD Ryzen Threadripper отстает примерно вдвое.

А вот в рейтинге всех систем в окрестностях встречаются, например, AMD Ryzen Threadripper PRO 3995WX (64C/128T, 4,31 ГГц) и EPYC 74F3 (2 × 24С/48T, 4,04 ГГц), но оба они отличаются высокой базовой частотой и почти полуторакратной разницей с Q80-30 в однопоточной производительности. Да и вообще продукции AMD в списке много. Со стороны Intel можно привести результаты решений с Xeon Platinum 8362 (2 × 32С/64T, 3,6 ГГц) или совсем уж специфичных систем в облаке (4 × 26С/52T, 2,7 ГГц) и с «живыми» Xeon Platinum 8268 (4 × 24С/48T, 3,9 ГГц).

Две последних системы и в однопоточном тесте ближе к Q80-30, но всё же задачи у них другие — вроде обслуживания SAP HANA. Тем не менее можно очень аккуратно сказать, что в данном бенчмарке изделие Ampere смотрится в многопоточных тестах как минимум интересно. PassMark Performance Test 10.1, конечно, своеобразно подсчитывает рейтинг, но и там видна просадка в однопоточном тесте — наш экземпляр набрал в нём 1331 MOps/sec, а в сумме получил 38289 баллов.

Поскольку синхронного теста с современными процессорами конкурентов сделать не удалось, для PTS были взяты результаты весеннего тестирования пар AMD EPYC 7763 и 7543 с Intel Xeon Platinum 8368 и 8260M. Да, сравнение выходит не совсем корректное, но для первичной оценки его хватит. Итоговый набор тестов сократился, так как ещё не все они доступны для Arm, а что-то просто уже не собирается штатным компилятором (GCC 11.2). Графики приведены без учёта результатов Intel oneDNN, поскольку этот пакет «заточен» в первую очередь под x86-64.

Впрочем, все другие потенциально проблемные результаты — вроде Kvazaar, который хорошо оптимизирован для AVX, или OpenSSL, где у Altra явный провал, — оставлены. Как и для любой новой платформы, вопрос всегда в наличии оптимизаций исходного кода, инструментов разработки и поставляемых в готовом виде бинарных файлов. В целом же в данном конкретном наборе бенчмарков и окружении Altra Q80-30 оказался, грубо говоря, в среднем на уровне двух Xeon 8260M (2 × 24C/48T, 2,4/3,9 ГГц, 35,75 Мбайт L3, TDP 165 Вт) прошлого поколения (Cascade Lake-SP).

CPU AMD Intel Ampere
2 × 7763 2 × 7543 2 × 3368 2 × 8260M 1 × Q80-30
Stream 5.1, Мбайт/с
Copy 339627,3 319521,6 311682,2 194747,9 154202,4
Scale 335561,8 318395,5 317250,6 194553,5 159078,5
Add 337742,8 322929,4 318898,7 206539,6 160524,5
Triad 332141,0 317128,1 321387,2 206608,2 159161,5
HPL 2.3, Тфлопс
3,1840 2,2044 4,4048 2,4523 1,2212

Важность оптимизации хорошо видна на примере HPL 2.3, где коммерческие библиотеки Arm Performance Libraries позволяют поднять FP64-производительность теста на порядок, до 1,22 Тфлопс. Это примерно две трети от теоретического пика, так как каждое ядро может выполнять до 8 Флоп/такт, что в сумме даёт 1,92 Тфлопс. Для справки в таблице даны результаты для x86-64 — это пиковые значения, полученные с помощью рецептов от AMD и Intel и их же инструментария. В случае Ampere ничего этого не было, но даже без тюнинга в Stream 5.1 работа с памятью у Altra оказалась хороша.

В HPL же удалось добиться и максимального энергопотребления. И это очень интересно: 325 Вт на всю систему, из них 212 Вт пришлось на CPU, температура которого приблизилась к +70 °C. Без столь активного использования SIMD потребление процессора под нагрузкой колеблется в довольно широких пределах (обычно от 140 до 170 Вт), а в простое он требует и вовсе 24 Вт. Если учитывать описанные выше особенности управления питанием и частотой, это просто прекрасный результат на фоне x86-64.

Заключение

Ampere Altra стоит попробовать — они могут соперничать с современными x86-64 CPU! Конечно, не во всех типах нагрузки, что, впрочем, было ясно с самого начала. Наиболее предпочтительными для этих процессоров являются задачи с хорошим распараллеливанием, которым не нужны большие кеши в CPU или специфические расширения. Естественно, есть целый ряд ниш, где конкуренцию AMD и Intel они составить не могут. Это, например, приложения, оптимизированные для AVX(-512), — всё же два 128-бит SIMD-блока NEON на ядро даже при большом числе ядер и более высокой частоте не дадут тот же уровень производительности.

Пока закрыт и путь в целый ряд корпоративных ниш, полагающихся на VMware или Windows Server. Собственно говоря, уже сейчас можно сказать, что с самим «кремнием» дело обстоит хорошо, но вот до той огромной экосистемы оптимизированного прикладного и системного ПО для x86-64, которая была наработана за годы доминирования на рынке, пока далеко. И Ampere в одиночку вряд ли сможет что-то с этим сделать. Однако, как уже было неоднократно сказано, Ampere метит в первую очередь в рынок гиперскейлеров, которые делают всё сами, начиная чуть ли не с прошивок.

Поэтому никаких, даже предварительных выводов относительно примерного уровня совокупной стоимости владения (TCO) делать не стоит. Да, на старшую модель Q80-33 (80C/80T) установлена рекомендованная цена в $4 050, что вдвое меньше, чем у старших AMD EPYC 7763 (64C/128T, $7 890) или Intel Xeon Platinum 8380 (40C/80T, $8 099), но при больших закупках даётся очень существенная скидка. А если оба процессорных гранда обеспокоятся ростом конкурента, то возможностей для ценовых манёвров у них будет гораздо больше.

Не менее важный фактор, влияющий на TCO, — энергопотребление платформы в целом. На первый взгляд у Ampere Altra с этим всё просто замечательно. Однако из осторожности скажем, что этот фактор лучше изучать и сравнивать на конкретных нагрузках, поскольку, во-первых, на незнакомой ранее системе легче допустить ошибку в оптимизации вычислений, работе с памятью, ускорителями или периферией, а, во-вторых, показатели частот и TDP в характеристиках считывать надо иначе, чем в случае x86-64. Зато с точки зрения «обвеса» Altra с ними наравне — 128 линий PCIe 4.0 + 8 каналов DDR4-3200 (до 4 Тбайт суммарно).

Как опять-таки было сказано ранее, Altra могут быть интересны и для применения в edge-системах. Если говорить конкретно о сервере Gigabyte E252-P30, то система нам в целом понравилась. Но нельзя не отметить, что доработка прошивок для неё всё ещё активно ведётся, и это порой приносит немногочисленные, но заметные изменения, а сама система всё ещё не лишена некоторых мелких проблем. Увы, пока что нельзя говорить о большом разнообразии платформ от разных вендоров и, соответственно, о возможности выбора. Интересно, как выйдет с Baikal-S?

Редакция благодарит компанию 3Logic за предоставленное на тест оборудование. Системы GIGABYTE на базе Ampere Altra будут доступны для покупки у данного дистрибьютора ориентировочно в I квартале 2022 года.

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER. | Можете написать лучше? Мы всегда рады новым авторам.
Постоянный URL: https://servernews.ru/1056763
Система Orphus