Серверы с процессорами на архитектуре arm64 старательно входят в нашу жизнь. В этой статье мы покажем распаковку, установку и небольшой тест нового сервера TaiShan 2280v2.
Распаковка
Сервер прибыл к нам в ничем не примечательной коробке. На боках коробки нанесен логотип Huawei, а также знаки тары и упаковки. Сверху можно видеть инструкцию по правильному извлечению сервера из коробки. Приступим к распаковке!
Сервер обернут в слой антистатического материала и уложен между слоями пенопласта. В общем, стандартная упаковка для сервера.
В маленькой коробочке можно найти салазки, два болта и два кабеля питания Schuko-C13. Салазки выглядят достаточно простыми, но о них мы поговорим позднее.
Сверху на сервере нанесена информация о данном сервере, а также доступы к BMC-модулю и в BIOS. Серийный номер представлен одномерным штрих-кодом, а QR-код содержит ссылку на сайт технической поддержки.
Снимем крышку сервера и заглянем внутрь.
Что внутри?
Крышку сервера удерживает специальная защелка, которую можно зафиксировать в закрытом состоянии крестовой отверткой. Открытие защелки приводит к сдвигу крышки сервера, после чего крышка снимается без особых проблем.
Сервер поставляется в готовой конфигурации под названием TaiShan 2280 V2 512G Standard Configuration в следующей комплектации:
- 2x Kunpeng 920 (архитектура ARM64, 64 ядра, базовая частота 2.6 ГГц);
- 16x DDR4-2933 32GB (суммарно 512 ГБ);
- 12x SAS HDD 1200GB;
- аппаратный RAID-контроллер Avago 3508 с источником резервного питания на базе ионистора;
- 2x сетевая карта с четырьмя 1GE портами;
- 2x сетевая карта с четырьмя 10GE/25GE SFP+ портами;
- 2x блок питания 2000 ватт;
- корпус Rackmount 2U.
Материнская плата сервера реализует стандарт PCI Express 4.0, что позволяет использовать всю мощь 4x 25GE сетевых карт.
В присланной нам конфигурации сервера пустуют 16 слотов оперативной памяти. Физически процессор Kunpeng 920 поддерживает до 2 ТБ оперативной памяти, что позволяет установить 32 планки памяти по 128 ГБ каждая, расширив общий объем оперативной памяти до 4 ТБ в одной аппаратной платформе.
На процессорах стоят съемные радиаторы без собственных вентиляторов. Вопреки ожиданиям процессоры распаяны на материнскую плату (BGA) и в случае выхода из строя могут быть заменены только в сервисном центре при помощи специального оборудования.
А теперь соберем сервер обратно и перейдём к монтажу в стойку.
Монтаж
В первую очередь в стойку монтируются салазки. Салазки — это простые полки, на которые укладывается сервер. С одной стороны, такое решение очень простое и удобное, однако обслужить сервер без вытаскивания его из стойки не представляется возможным.
На фоне остальных серверов TaiShan цепляет внимание плоской передней панелью и зелено-черной цветовой гаммой. Отдельно хочется отметить, что производитель чутко относится к маркировке установленного в сервере оборудования. На каждой дисковой салазке указана необходимая информация об установленном диске, а под VGA-портом нанесена пиктограмма, обозначающая порядок нумерации дисков.
VGA-порт и 2 порта USB на передней панели — приятный бонус от производителя в дополнение к основным VGA + 2 USB на задней панели. На задней панели также можно найти порт для IPMI, отмеченный как MGMT, и COM-порт в RJ-45 исполнении, отмеченный как IOIOI.
Первичная настройка
В ходе первичной настройки выполняется изменение настроек входа в BIOS и настройка IPMI. Huawei пропагандирует безопасность, поэтому BIOS и IPMI защищены паролями, отличными от привычных всем admin/admin. При первом входе BIOS предупреждает, что пароль по умолчанию ненадежный и его нужно сменить.
Huawei BIOS Setup Utility схож по интерфейсу с Aptio Setup Utility, применяемой в серверах компании SuperMicro. Здесь не встретишь ни переключателя для технологии Hyper-Threading, ни Legacy-режима.
Веб-интерфейс BMC-модуля предлагает три поля для ввода вместо ожидаемых двух. Войти в интерфейс можно как по локальному логину-паролю, так и аутентификацией через удаленный LDAP-сервер.
IPMI предоставляет множество возможностей для управления сервером:
- RMCP;
- RMCP+;
- VNC;
- KVM;
- SNMP.
По умолчанию метод RMCP, используемый в ipmitool отключен по соображениям безопасности. Для KVM-доступа iBMC предлагает два решения:
- «классический» Java-апплет;
- HTML5-консоль.
Так как процессоры ARM позиционируются как энергоэффективные, на главной странице веб-интерфейса iBMC можно видеть блок «Energy Efficiency», который показывает не только сколько энергии мы сэкономили, используя данный сервер, но сколько килограммов углекислого газа не попало в атмосферу.
Несмотря на внушительную мощность блоков питания, в режиме простоя сервер потребляет 340 ватт, а под полной нагрузкой всего 440 ватт.
Использование
Следующий важный этап — установка операционной системы. Под архитектуру arm64 существует множество популярных дистрибутивов Linux, однако лишь наиболее современные версии устанавливаются и корректно работают на сервере. Вот список операционных систем, которые нам удалось запустить:
- Ubuntu 19.10;
- CentOS 8.1.
- Simply Linux 9.
Во время подготовки статьи вышла новость, что российская компания «Базальт СПО» выпустила новую версию операционной системы Simply Linux. Заявлено, что Simply Linux поддерживает процессоры Kunpeng 920. Несмотря на то, что основное применение этой ОС — Desktop, мы не упустили возможность проверить ее работу на нашем сервере и остались довольны результатом.
Архитектура процессора, его главная особенность, пока что поддерживается не всеми приложениями. Большинство программного обеспечения ориентировано на повсеместно распространенную архитектуру x86_64, а версии, портированные для arm64, чаще всего заметно отстают по функционалу.
Huawei рекомендует использовать EulerOS, коммерческий дистрибутив Linux на базе CentOS, так как данный дистрибутив изначально полностью поддерживает функционал серверов TaiShan. Существует бесплатная версия EulerOS — OpenEuler.
Известные бенчмарки, такие как GeekBench 5 и PassMark CPU Mark пока не работают с архитектурой arm64, поэтому для сравнения производительности были взяты «повседневные» задачи в виде распаковки, компиляции программ и вычисления числа π.
Конкурентом из мира x86_64 взят двухсокетный сервер с Intel® Xeon® Gold 5218. Приводим технические характеристики серверов:
Характеристика | TaiShan 2280v2 | Intel® Xeon® Gold 5218 |
Процессор | 2x Kunpeng 920 (64 ядра, 64 потока, 2.6 ГГц) | 2x Intel® Xeon® Gold 5218 (16 ядер, 32 потока 2.3 ГГц) |
Оперативная память | 16x DDR4-2933 32GB | 12x DDR4-2933 32GB |
Диски | 12x HDD 1.2TB | 2x HDD 1TB |
Все тесты проводятся на операционной системе Ubuntu 19.10. Перед выполнением тестов все компоненты системы были обновлены командой full-upgrade.
Первым тестом сравниваем производительность в «одиночном зачете»: вычисление ста миллионов знаков числа π на одном ядре. В APT-репозиториях Ubuntu есть программа, решающая эту проблему: утилита pi.
Следующий этап тестирования — основательный «прогрев» сервера компиляцией всех программ проекта LLVM. В качестве компилируемого выбран LLVM monorepo 10.0.0, а компиляторами выступают gcc и g++ версии 9.2.1, поставляемые с пакетом build-essentials. Так как мы испытываем серверы, то при конфигурировании сборки добавим ключ -Ofast:
cmake -G"Unix Makefiles" ../llvm/ -DCMAKE_C_FLAGS=-Ofast -DCMAKE_CXX_FLAGS=-Ofast -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;libcxx;libcxxabi;libunwind;lldb;compiler-rt;lld;polly;debuginfo-tests"
Это включит максимальную оптимизацию, проводимую во время компиляции, и дополнительно нагрузит испытуемые серверы. Компиляция запускается параллельно на всех доступных потоках.
После компиляции можно заняться перекодированием видео. Самая известная утилита командной строки, ffmpeg, обладает специальным режимом бенчмаркинга. В тестировании участвовал ffmpeg версии 4.1.4, а в качестве входного файла взят мультфильм Big Buck Bunny 3D в высоком разрешении.
ffmpeg -i ./bbb_sunflower_2160p_30fps_normal.mp4 -f null - -benchmark
Все значения в результатах тестов — время, затраченное на успешное выполнение задачи.
Характеристика | 2x Kunpeng 920 | 2x Intel® Xeon® Gold 5218 |
Общее количество ядер/потоков | 128/128 | 32/64 |
Базовая частота, ГГц | 2.60 | 2.30 |
Максимальная частота, ГГц | 2.60 | 3.90 |
Вычисление числа π | 5m 40.627s | 3m 18.613s |
Сборка LLVM 10 | 19m 29.863s | 22m 39.474s |
Перекодирование видео ffmpeg | 1m 3.196s | 44.401s |
Легко заметить, что основное преимущество представителя архитектуры x86_64 — частота 3.9 ГГц, достигаемая с помощью технологии Intel® Turbo Boost. Процессор на архитектуре arm64 берет количеством ядер, а не частотой.
Как и ожидалось, при вычислении числа π в один поток количество ядер никак не помогает. Тем не менее, при компиляции больших проектов ситуация изменяется.
Заключение
С физической точки зрения сервер TaiShan 2280v2 отличается вниманием к удобству эксплуатации и безопасности. Наличие PCI Express 4.0 является отдельным плюсом данной конфигурации.
При использовании сервера могут возникнуть проблемы с программным обеспечением под архитектуру arm64, однако, эти проблемы являются специфичными для каждого конкретного пользователя.
Хотите протестировать весь функционал сервера на собственных задачах? TaiShan 2280v2 уже доступен в нашей Selectel Lab.