Huawei Kunpeng 920
Процессоры серии Kunpeng для Huawei разрабатываются компанией HiSilicon. Процессор Kunpeng 920 — один из первых, представленных Huawei на российском рынке для серверных решений. Kunpeng 920 производится на основе глубоко модифицированной микроархитектуры Arm Cortex-A72 (TaiShan V110). Существуют 32, 48 и 64 ядерные модели (3226, 4826, 6426). Kunpeng 920 основан на чипе HiSilicon Hi1620, который, в свою очередь, является следующим поколением 32-ядерного чипа HiSilicon Hi1616 (TaiShan V100).
Kunpeng 920 был представлен на международной выставке CES 2019 в январе 2019 года. Процессор Kunpeng 920 основан на 7-нм техпроцессе, подобно Kirin 980 (рис. 1), имеет от 24 до 64 ядер с тактовой частотой от 2,6 до 3,0 ГГц и 8-канальную память DDR4. Процессор включает в себя два порта 100G RoCE, которые поддерживают PCIe Gen4 и CCIX (https://www.huaweiupdate.com/huawei–to–build–worlds–most–powerful–computing–platform/). Чип поддерживает до 2 ТиБ восьмиканальной памяти DDR4-2933 (https://en.wikichip.org/wiki/hisilicon/kunpeng/920-6426).
Рис. 1. Маркировка процессоров Huawei Kunpeng для серверных решений (https://www.siliconinvestor.com/readmsg.aspx?msgid=32142350).
Протокол взаимосвязи Huawei HCCS поддерживает соединение до 4-х процессоров. Процессоры не поддерживают HyperThreading, поэтому 96 ядер означает 96 потоков. Между собой CPU связаны тремя шинами Hydra Link, каждая из которых имеет пропускную способность 240 Гбит/c.
Процессор построен на базе архитектуры ARM Neoverse N1, также известной под названием Ares. Система маркировки процессоров Kunpeng 920 и их основные характеристики представлены на рис. 1, 2.
Рис. 2. Основные характеристики процессоров Huawei Kunpeng 920 [1].
Особенности ядер TaiShan V110 – для 48 ядер (https://habr.com/ru/companies/icl_services/articles/695484/):
- 64 битная архитектура armv8.2;
- FP/SIMD расширения VFPv4 и NEON;
- внеочередное исполнение;
- улучшенный предсказатель ветвлений;
- поддержка виртуализации;
- конвейер 11 – 13 стадий;
- 8 портов на исполнение микроопераций:
- 2 загрузки/сохранения;
- 2 целых АЛУ (сложение, сдвиг);
- 1 блок ветвлений;
- 1 АЛУ для умножения, деления;
- 2 блока SIMD/FPU;
- 4-уровневый декодер команд (3 уровня в Cortex-A72);
- кэши:
- L1: 64 КБ кэш инструкций и данных (4 канальный, ассоциативный, размер линии 64 байта);
- L2: 512 КБ независимого кэша на ядро (4 ядра в кластере, в сумме 24 МБ);
- L3: 24~64 МБ общего кэша (1 МБ на ядро), зависит от конкретной модели.
Различия между платформами Arm и Х86 в основном связаны с внутренней конструкцией микросхем, включая набор команд, конвейер, распределение ядра, кэш, память и управление операциями ввода-вывода. Для повышения производительности за счет увеличения сложности процессора платформа Х86 использует компьютер со сложным набором команд (CISC). Произошло развитие набора команд Х86 от MMX до SSE и AVX. В Arm используется компьютер с сокращенным набором команд (RISC), который позволяет в значительной степени упростить архитектуру и сохранить только необходимые команды. Благодаря этому удается упростить структуру процессора и обеспечить более высокую энергоэффективность при меньших размерах. Архитектура Arm v8.2 поддерживает 64-разрядные операции, 32-разрядные команды, 64-разрядные регистры и 64-разрядную адресацию. Разработанное компанией Huawei ядро позволяет повысить производительность, а многопроцессорная архитектура — выполнить вертикальное масштабирование при обеспечении превосходной энергоэффективности [2].
По результатам тестов на энергоэффективность процессор Kunpeng 920 превосходит процессор Intel с аналогичными характеристиками. Cравнение коэффициентов энергоэффективности Kunpeng 920 и Intel 8180 и Intel 6138 по результатам теста SPEC (Standard Performance Evaluation Corporation) – рис. 2а (SPECint — это технический стандарт тестирования производительности компьютеров для определения вычислительной мощности процессора).
Рис. 2а. Коэффициенты энергоэффективности процессоров Kunpeng 920 и Intel [2].
Kunpeng 920 высокоинтегрированная микросхема SoC. Шина когерентности кэша позволяет выполнять симметричную многопроцессорную обработку (СMP) до четырех процессоров. Каждый процессор предоставляет различные типы портов ввода-вывода, контроллеры хранения и механизмы ускорения хранения:
- порты ввода-вывода и контроллеры хранения: до 16 портов SAS0, 40 портов PCIe 4.0 и 2 порта 100GE;
- механизмы ускорения хранения: механизм RAID, механизм SEC и механизм сжатия ZIP.
Благодаря интеграции этих портов и механизмов процессором удается уменьшить количество периферийных микросхем, упростить конструкцию системы и снизить энергопотребление.
Архитектура Kunpeng 920 представлена на рис. 3 [4]. Руководство по архитектуре – [3].
Рис. 3. Архитектура Huawei Kunpeng 920 [4].
Каждое ядро представляет собой 4-канальный неупорядоченный (out-of-order) суперскаляр, реализующий ARMv8.2-A ISA. Ядро поддерживает почти все функции ARMv8.4 за некоторыми исключениями, включая скалярное произведение и расширение FP16 FML. В сравнении с ядрами Cortex от Arm, ядро от Huawei имеет улучшенную подсистему памяти, большее количество исполнительных блоков и лучший предсказатель ветвлений. Полный чип, изготовленный по 7-нанометровому техпроцессу TSMC для высокопроизводительных вычислений и содержащий около 20 млрд транзисторов (на нескольких кристаллах), включает до 64 таких ядер, организованных в виде шестнадцати квадроплексов. Встроенный контроллер памяти поддерживает до восьми каналов памяти DDR4 со скоростью до 2933 МТ/с (https://www.siliconinvestor.com/readmsg.aspx?msgid=32142350).
Несмотря на то, что Kunpeng 920 это серверный чип общего назначения, Huawei также неоднократно представляла его как чип для высокопроизводительных вычислений. Ядра TaiShan V110 имеют один 128-битный блок ASIMD. Он способен выполнять одну векторную инструкцию FMA двойной точности за такт или две векторные инструкции одинарной точности за такт. Это делает его довольно плохим выбором для плотных SIMD-приложений, особенно тех, которые используют числа с плавающей запятой двойной точности.
Чип включает в себя ряд аппаратных ускорителей — механизм сжатия (GZIP, LZS, LZ4), способный сжимать до 40 Гбит/с и распаковывать до 100 Гбит/с, а также механизм крипторазгрузки (для AES, DES, 3DES, SHA1/2 и т. д.) с пропускной способностью до 100 Гбит/с. Ввод-вывод чипа включает 40 линий PCIe 4 с поддержкой CCIX, 4 порта USB 3.0, 2x SATA 3.0, x8 SAS 3.0 и набор портов 10/25/100 GbE (рис. 4).
Рис. 4. Huawei Kunpeng 920 включает в себя ряд аппаратных ускорителей, механизм крипторазгрузки (для AES, DES, 3DES, SHA1/2 и т.д.), также ввод-вывод – 40 линий PCIe 4 с поддержкой CCIX, 4 порта USB 3.0, 2x SATA 3.0, x8 SAS 3.0 и набор портов 10/25/100 GbE (https://www.siliconinvestor.com/readmsg.aspx?msgid=32142350).
Сам чип состоит из двух вычислительных кристаллов, называемых кластером Super CPU (SCCL, Super CPU cluster), каждый из которых содержит 32 ядра. Также возможно, что SCCL имеет только 24 ядра, и в этом случае есть три таких кристалла с теоретическим максимальным количеством ядер 72 возможных, но они не предлагаются из соображений производительности. Вне зависимости от этого, плашек SCCL точно минимум две. Кроме того, имеется также кристалл ввода-вывода, называемый суперкластером ввода вывода (SICL, Super IO Cluster), который содержит все высокоскоростные SerDes и низкоскоростные вводы-выводы.
В каждом кристалле SCCL имеется 6 (или 8) кластеров ЦП (CCL, CPU Clusters), контроллеры памяти и блок кэш-памяти L3. CCL представляют собой квадроплекс TaiShan V110 вместе с разделом тегов кэша L3. Кластеры Super IO включают в себя различные периферийные устройства ввода-вывода, включая PCIe Gen 4, SAS, контроллеры сетевого интерфейса и каналы связи Hydra (рис. 5).
Рис. 5. Чип Kunpeng 920 состоит из двух вычислительных кристаллов, называемых кластером Super CPU (SCCL, Super CPU cluster), каждый из которых содержит 32 ядра (https://www.siliconinvestor.com/readmsg.aspx?msgid=32142350).
Чипы Kunpeng 920, ориентированные на рынок серверов, поддерживают как двухпроцессорную, так и четырехпроцессорную многопроцессорную обработку. SICL содержит три интерфейсных канала Hydra, каждый из которых имеет пиковую пропускную способность 240 Гбит/с (рис. 6). В настоящее время единственным другим сервером Arm на рынке с поддержкой многопроцессорности является Cavium ThunderX2 на базе микроархитектуры Vulcan. Ampere планирует добавлять поддержку 2-way SMP (инфо по со стоянию на май 2019 г., https://www.siliconinvestor.com/readmsg.aspx?msgid=32142350).
Рис. 6. Чипы Kunpeng 920 поддерживают как двухпроцессорную, так и четырехпроцессорную многопроцессорную обработку (https://www.siliconinvestor.com/readmsg.aspx?msgid=32142350).
В рамках платформы Kunpeng 920 компания HiSilicon также разрабатывает весь набор микросхем платформы. Сюда входят процессоры Hi1620, контроллер узла Hi1503, контроллер SSD Hi1812, сетевая карта Hi1822 и BMC Hi1710 (рис. 7).
Рис. 7. Набор микросхем, разрабатываемых в рамках платформы Kunpeng 920: процессоры Hi1620, контроллер узла Hi1503, контроллер SSD Hi1812, сетевая карта Hi1822 и BMC Hi1710 (https://www.siliconinvestor.com/readmsg.aspx?msgid=32142350).
SoC следующего поколения — это Hi1630, выпускаемые под торговой маркой Kunpeng серии 930. Ожидается, что эти чипы будут иметь более производительное ядро с более высокими частотами, одновременную поддержку многопоточности и расширение Arm Scalable Vector Extension (SVE). Эти чипы также планируется перевести на память DDR5.
Серия Kunpeng 950 станет продолжением модели 930 и запланирована на 2023 год (рис. 8, https://en.wikichip.org/wiki/hisilicon/kunpeng#930_Series).
Рис. 8. Программа развития семейства процессоров Huawei Kunpeng (https://en.wikichip.org/wiki/hisilicon/kunpeng#930_Series).
Совместимость ОС и прикладного ПО с Huawei Kunpeng 920
Архитектура x86 и ARM не совместимы, поэтому Windows не будет работать на KunPeng. Процессор Kunpeng 920 работает исключительно в 64-разрядном режиме и не поддерживает систему команд armhf, под которые уже была версия дистрибутива Astra Linux. Специально для KunPeng была сделана сборка дистрибутива (релиз «Новороссийск»). Astra Linux гордится тем, что их дистрибутив теперь работает и на Xeon-ах, и на Эльбрусах, а теперь – и на Kunpeng-ах. Подобное решение из китайского ARM-сервера и российского противовзломного ПО выглядит уже не как бета-версия, а как готовый продукт, защищённый и с технической, и с политической точек зрения, соответствующий приказам регулятора, курсу партии и требованиям ведомств [4].
Какой Linux устанавливается на сервер c Huawei Kunpeng 920?
Практически все серверные дистрибутивы имеют версию под ARM64, именуемую “aarch64”. Почти все те же самые пакеты, что доступны для версии AMD64, скомпилированы и под ARM64, устанавливаются теми же командами из репозиториев. Например, для тестирования был использован Debian 10, установка которого совершенно не отличалась от инсталляции на другое железо: все сетевые интерфейсы подхватываются без проблем, так что можно использовать Netinstall дистрибутив.
Что из софта доступно для установки?
Для Debian на сайте есть список доступных пакетов с указанием архитектур, под которые они скомпилированы, так что заранее можно посмотреть – есть ли нужный вам софт в репозитории, или можно ли его скомпилировать из исходников. Для удалённого мониторинга можно поставить Webmin и Cockpit. MariaDB, QEMU-KVM устанавливается для виртуализации с управлением через GUI и Jupyter для запуска Python-блокнотиков и Git для доступа к самой большой в мире библиотеке исходных кодов.
С каким софтом есть проблемы?
С научным софтом, разрабатываемым “не-сообществом” есть проблемы, например, с Tensorflow – его нет под ARM64. Но на сайте разработчиков есть инструкция как скомпилировать его из исходников: это всего 3 команды и 5 минут в консоли. Однако, как только начнётся установка библиотеки через pip, то здесь и будут поджидать проблемы: что-то нужно ставить с Github, что-то искать в исходниках и компилировать, если удастся найти. Такого менеджера, как Anaconda под ARM64 нет вообще, и в итоге, библиотеки Keras, включая matplotlib, pandas и другие при установке выдают ошибки.
Для работы какого-то ПО, не входящего в состав linux-дистрибутива, лучше добавлять уровень абстракции и использовать сторонние сборки, если есть. У Huawei нет никакого сервиса или мини-маркета вроде Bitnami, из которого можно было бы скачать упакованные в контейнер или виртуалку приложения (на момент написания статьи, прим. ред.).
Поддержка виртуализации
В октябре 2020 г. было анонсировано техническое превью гипервизора VMware ESXi на архитектуре aarch64 под названием ESXi ArmFling. Среди применений – граничные устройства, использование в составе SmartNIC, на одноплатных компьютерах Rasp berry Pi (размером с банковскую карту) и др.
Поддерживаемое оборудование ESXi-Arm (https://flings.vmware.com/esxiarmedition#requirements):
- датацентр:
- системы Ampere Computing на базе eMAG от Avantek и Lenovo(HR330A, HR350A);
- системы на базе Ampere Computing Altra от Avantek и других дистрибьюторов (экспериментальные, только с одним сокетом);
- Ampere Computing Altra формы от Oracle Cloud Infrastructure (экспериментальная версия);
- Arm Neoverse N1 System Development Platform;
- Near Edge (ближний край):
- SolidRun Honeycomb LX2;
- SolidRun MacchiatoBin или CN9132 EVB;
- комплект разработчика NVIDIA Jetson AGX Xavier (экспериментальный);
- Far Edge (дальний край):
- RaspberryPi 4b — модель 4 ГБ или 8 ГБ (настоятельно рекомендуется 8 ГБ, также рекомендуется устройство USB0 для ESXi/VMFS);
- Raspberry Pi 400;
- NVIDIA Jetson Xavier NX Developer Kit (experimental);
- LS1046A-based NXP Freeway;
- LS1046A-based NXP RDB;
- Socionext SynQuacer Developerbox;
- PINE64 Quartz64 Model A;
- Firefly Station M2 (4GB и 8GB модели).
vCenter Server не требуется, но для клиентов, которые хотят использовать vCenter Server (x86) для управления хостом ESXi-Arm, эта функция поддерживается в составе:
- vCenterServerAppliance (VCSA) 7.0 или новее требуется для управления хостом ESXiArm;
- vCenterServerAppliance (VCSA) 7.0c или 7.0d требуется для включения vSphereHA и vSphereFT на хосте ESXi-Arm. Более подробные инструкции см. в документации ESXiArm;
- можно использовать vCenter Server Appliance (VCSA) 7.0 Update1 или новее, но vSphere DRS не будет работать (следует применить следующий обходной путь). Если вам нужен vSphere DRS, используйте VCSA0c или 7.0d.
Чтобы получить доступ к ESXi-ARM, вам необходимо зарегистрировать учетную запись MyVMware (регистрация бесплатная): https://my.vmware.com/web/vmware/registration.
В марте 2023 г. вышла версия ESXi-Arm Fling 1.12 (https://blogs.vmware.com/arm/2023/03/17/esxiarmfling112refresh/). Среди новых возможностей:
- экспериментальная поддержка серверов HPE ProLiant RL300Gen11;
- экспериментальная поддержка платформ на базе MarvellOCTEON 10;
- поддержка NVMe на когерентных корневых комплексах PCIeбез кэширования (например, системах Rockchip RK3566, таких как Pine64 Quartz64 и Firefly Station M2). Добавлен обходной путь для устройств с идентификатором поставщика/устройства PCI 126f:2263 (например, Patriot M.2 P300), которые сообщают о неуникальных идентификаторах EUI64/NGUID, что препятствует обнаружению более одного диска в системах с несколькими присутствующими устройствами.
Поддержка контейнеров
Docker устанавливается одинаково и под x86, и под ARM64. Используя Portainer, можно объединить в одном интерфейсе сервер на AMD EPYC и, например, тестовый Huawei Taishan 2280 v2. Перенос image-файлов между AMD64 и ARM64 не осуществить, но можно самостоятельно упаковать приложение в docker образ и сконвертировать его под любую архитектуру.
ОС Huawei openEuler
В сентябре 2019 г. Huawei анонсировала серверную операционную систему openEuler. Huawei также сообщила, что Huawei одновременно готовит сообщества с открытым исходным кодом с такими компаниями, как Red Flag и Wuhan Shenzhidu (https://www.huaweiupdate.com/download–huawei–openeuler–os–source–code/#more2397).
Huawei будет постепенно открывать свои накопления технологий в области базового программного обеспечения ИКТ и открывать исходные коды основных возможностей платформы в операционной системе, компиляторе / JDK и других областях для сообщества openEuler.
В сообществе openEuler пользователи могут загрузить установочные образы операционной системы или исходный код, быстро понять и изучить реализацию ОС openEuler.
У openEuler есть два подпроекта с открытым исходным кодом: A-Tune и iSula: A-Tune — это интеллектуальное системное программное обеспечение для оптимизации производительности, а iSula — это облачное решение, которое может удовлетворить многочисленные потребности в области ИКТ.
Разработчики могут получить доступ к следующим ссылкам, чтобы получить соответствующий код и документы для справки и обучения, а также для понимания архитектуры и исходного кода операционной системы openEuler.
EulerOS — одна из лучших операционных систем, которая в настоящее время поддерживает серверы TaiShan. Она имеет сильную конкурентоспособность с точки зрения производительности, со вместимости и энергопотребления:
- улучшение многоядерного параллелизма и повышение эффективности бизнеса; технология совместного использования кэша L2 для повышения эффективности доступа между различными процессами OSD;
- впервые в процессорной архитектуре Kunpeng реализован патч ядра;
- включив ключевых функций процессора Kunpeng, что обеспечивает прорыв в производительности в основных бизнес-сценариях и вносит вклад в сообщества разработчиков открытого исходного кода, таких как ядро Linux, виртуализация, GCC, OpenJDK и Docker.
Также компания объявила, что база данных GaussDB от Huawei также будет с открытым исходным кодом, которая в настоящее время охватывает 70% корпоративных бизнес-сценариев, и будет полностью подключена к сети до 30 июня 2020 года.
В марте 2020 г. Huawei сообщила об объединении с четырьмя ведущими поставщиками ОС, Kylinsoft, iSoft, Uniontech и Институтом программного обеспечения Китайской академии наук (ISCAS, Institute of Software Chinese Academy of Sciences), чтобы анонсировать коммерческие выпуски на базе openEuler (https://www.huaweiupdate.com/openeuler-20-03-lts–huawei–joins–with–four–leading–os–vendors/#more-6932).
27 марта 2020 года версия openEuler 20.03 LTS официально выпущена в сообществе с открытым исходным кодом. Это первая LTS версия с момента открытия сообщества открытого исходного кода.
Основанная на многолетнем техническом опыте и ноу-хау Huawei, версия openEuler 20.03 LTS продемонстрировала лучшую в отрасли стабильность и безопасность:
- многоядерный высокий параллелизм: механизм управления файловым кэшем был оптимизирован без блокировки, что улучшило параллелизм Nginx HTTP на 15%;
- встроенный подключаемый модуль KAE: совместная работа программного и аппаратного обеспечения управляет аппаратным ускорителем процессора Kunpeng, что позволяет библиотеке ускорения Kunpeng повысить производительность на 10–100%;
- облегченный контейнер iSula. Будучи легким, быстрым, простым в использовании и гибким, он сокращает время запуска на 35% и снижает потребление ресурсов памяти на 68%;
- OpenJDK: повышение производительности на 20% за счет оптимизации управления памятью и компиляции;
- A-Tune: обеспечивает интеллектуальную автонастройку в зависимости от сценария, повышая эффективность настройки системы на 30%;
- широкая поддержка архитектуры: совместимая с такими архитектурами процессоров, как Kunpeng и x86, ОС в будущем будет поддерживать больше процессорных архитектур.
Четыре поставщика ОС выпустили коммерческие версии, обогащая вычислительную экосистему:
- Kylinsoft создает ОС KylinServer на основе ядер openEuler. Она применяется к сценариям многоядерных гетерогенных вычислений и особенно хорош для обработки критически важных сервисов и загрузки данных;
- iSoft выпускает iSoftServerOSV1 для Kunpeng, первый коммерческий выпуск, основанный на openEuler. iSoft продолжит поддерживать сообщество openEuler и поможет сделать openEuler ведущим мировым сообществом;
- Uniontech представляет DeepinEulerV0. ОС на базе Kunpeng поддерживает все новые функции процессора Kunpeng и обеспечивает непревзойденную производительность. Благодаря постоянному обновлению deepinEuler и улучшению экосистемы Kunpeng, deepinEuler получит более широкое распространение в большем количестве сценариев;
- ISCAS официально выпустила EulixOSServer0. В будущем ISCAS инициирует программу облегчения поставок программного обеспечения с открытым исходным кодом, что позволит сообществу openEuler обеспечить еще более высокое качество и устойчивость.
Тестирование производительности Huawei Kunpeng 920
Производительность всех современных CPU в типичных задачах сопоставима, и в своём классе Kunpeng 920 ориентирован на нишу топовых процессоров Intel и AMD с 48 ядрами и больше.
CDNvideo (https://www.cdnvideo.ru/) – один из ведущих провайдеров CDN или сети доставки контента (Content Delivery Network) в России и СНГ – в конце 2020 г. провел сравнительное тестирование процессоров х86 и Arm64 (Kunpeg) в составе своих облачных сервисов (https://apkit.ru/files/CDN-APKIT.pdf). Необходимо заметить, что решения Huawei на момент тестирования использовались в составе всех компонент инфраструктуры облака:
- OpenStack: Taishan200 (на базе ЦПУ Kunpeng920) для вычислений;
- NPUAtlas 300 для ускорения ИИ;
- блочное хранилище – CEPH на базеTaishan 200 в качестве нод хранения;
- объектное хранилище – CEPH| OpenIOна базеTaishan 200 в качестве нод хранения.
Были протестированы 4 сценария использования для БД MySQL, Apache&Redis, OpenSSL: 1/2 и для OpenSSL: 2/2.
Тестирование производительности MySQL Тестовое окружение:
- x86 VM: 24 vCPU/48 GB Intel(R) Xeon(R) Gold 6266C CPU @ 3.00GHz;
- ARM64 VM: 24 vCPU/48 GB Kunpeng 920 @ 2.60GHz.
Результаты тестирования – рис. 9. Для нагрузок “только чтения” (read only) MySQL на АРМ показывает практически одинаковые результаты с MySQL на x86. Для нагрузок, включающих запись MySQL на АРМ начинает немного отставать, но если посмотреть на масштабирование, то ситуация улучшается.
Рис. 9. Результаты тестирования Huawei Kunpeng 920 и Intel(R) Xeon(R) Gold 6266C CPU на тестах MySQL [5].
Тестирование производительности Apache&Redis
Сценарии: Apache&Redis
Тестовое окружение:
- x86 VM: 24 vCPU/48 GB Intel(R) Xeon(R) Gold 6266C CPU @ 3.00GHz;
- ARM64 VM: 24 vCPU/48 GB Kunpeng920 @ 2.60GHz.
Результаты тестирования – рис. 10. Для RPS-тестов Apache на AРМ показывает одинаковые результаты с Apache на x86. Для RPS-тестов Redis на AРМ показывает одинаковые результаты с Apache на x86.
Рис. 10. Результаты тестирования Huawei Kunpeng 920 и Intel(R) Xeon(R) Gold 6266C CPU на тестах Apache&Redis [5].
Тестирование производительности OpenSSL: 1/2 Результаты тестирования – рис. 11.
Рис. 11. Результаты тестирования Huawei Kunpeng 920 и Intel(R) Xeon(R) Gold 6266C CPU на тестах OpenSSK: 1/2 [5].
Тестирование производительности OpenSSL: 2/2 Результаты тестирования – рис. 12.
Рис. 12. Результаты тестирования Huawei Kunpeng 920 и Intel(R) Xeon(R) Gold 6266C CPU на тестах OpenSSK: 2/2 [5].
Сравнение процессоров БайкалS и Kunpeng 9204826
Данное сравнение было представлено 27 окт. 2022 компанией ICL Services [6]. Общие характеристики процессоров даны в табл. 1. Для сравнения были проведены следующие тесты:
- 7zip встроенный бенчмарк;
- Dhrystone, Whetsone;
- Coremark;
- Scimark 2;
- HPL;
- Stream;
- Stockfish;
- Blender;
- Geekbench 5.
Табл. 1. Характеристики процессоров БайкалS и Kunpeng 920.
Результаты тестирования представлены в табл. 2.
Табл. 2. Результаты тестирования процессоров БайкалS и Kunpeng 920.
Архитектура процессора БайкалS
Байкал-S — процессор на основе 64-разрядной RISC архитектуре ARM (armv8, aarch64), работает на частоте 2 ГГц (возможна 2,5 ГГц) имеет 48 ядер, которые реализуют микроархитектуру ядер Cortex A75. Блок-схема процессора Байкал-S – рис. 13, кристалл процессора Байкал-S – рис. 14, схема микроархитектуры Cortex-A75 – рис. 15. Рис. 13. Блок-схема процессора Байкал-S.
Рис. 14. Кристалл процессора Байкал-S.
Рис. 15. Схема микроархитектуры Cortex-A75.
Особенности ядер процессора БайкалS на основе микроархитектуры Cortex-A75:
- 64 битная архитектура armv8.2;
- FP/SIMD расширения VFPv4 и NEON;
- внеочередное исполнение;
- предсказание ветвлений;
- поддержка виртуализации;
- конвейер 11 – 13 стадий;
- 8 портов на исполнение микроопераций:
- 2 загрузки/сохранения;
- 2 целых АЛУ (сложение, сдвиг);
- 1 блок ветвлений;
- 1 АЛУ для умножения, деления;
- 2 блока SIMD/FPU;
- 3-уровневый декодер команд (6 микроинструкций за цикл);
- кеши:
- 64 КБ L1 кэш команд (4 канальный, ассоциативный, размер линии 64 байта);
- 64 КБ L1 кэш данных (4 канальный, ассоциативный, размер линии 64 байта);
- в Байкал-S 512 КБ L2 на 1 ядро (4 ядра в кластере), в сумме 24 МБ;
- кэш L3: 24 МБ (2 МБ в кластере);
- кэш L4: 32 МБ.
Дополнительные сведения о тестах
Coremark
Современный тест, который должен заменить Dhrystone и Whetstone. Написан на C. Считает различные массивы, матрицы, сортировка массивов и т.д. Предназначался для запуска на всём: от микроконтроллеров до мощных процессоров.
Dhrystone
Dhrystone достаточно древний тест 80-х годов, написан на C. Тестирует целочисленную арифметику и работу со строками. Результаты измеряются в Dhrystone/s и DMIPS. (DMIPS = Dhrystone/s делить на 1757).
Whetstone
Тестирует арифметику с плавающей/фиксированной запятой, математические функции, ветвления, вызовов функций, присваиваний, работы с числами с фиксированной запятой, ветвлений. Результаты измеряются в MMIPS.
HPL
HPL – переносимый высокопроизводительный тест, который используется для суперкомпьютеров. Решает системы линейных уравнений, использует библиотеки BLAS и MPI. Результаты выдаёт в GFLOPS.
7zip
Встроенный тест архиватора. Тест особо не параллелится, результаты примерно равные на этих процессорах (частота одинаковая).
STREAM
Тест производительности ОЗУ.
Blender
Рендеринг сцены.
Источники, доп. ресурсы
[1] Huawei TaiShan Server. Supercharge Data Center Computing with Kunpeng Processors, 2020-12-30 (Huawei TaiShan Server Data Sheet.pdf) – https://e.huawei.com/en/material/datacenter/server/7a0b8b0f056f479f909220ac21915999.
[2] Высокоэнергоэффективный процессор Huawei Kunpeng 920 – https://forum.huawei.com/enterprise/ru/высокоэнергоэффективный-процессор-huawei–kunpeng-920/thread/768467-100139.
[3] Arm® Architecture Reference Manual for Aprofile architecture, ARM DDI 0487J.a (ID042523) – https://developer.arm.com/documentation/ddi0487/latest/arm-architecture-reference-manual-armv8-for-armv8-a-architecture-profile.
[4] Обзор и FAQ сервера на Kunpeng 920, Huawei Taishan 2280 V2, 15.04.2020 – https://hwp.ru/articles/obzor_i_faq_servera_huawei_taishan_2280_v2_arm64_server_na_sobstvennykh_protsessorakh_kunpeng_920/.
[5] Сравнение производительности архитектуры ARM64 и x86 – https://apkit.ru/files/CDN20APKIT.pdf.
[6] Сравнение процессора Байкал-S и HiSilicon Kunpeng Блог компании ICL Services. 27 окт 2022 – https://habr.com/ru/companies/icl_services/articles/695484/.
Авторы: Гантимуров А.П., Калашник А.Г.
Отслеживать