Китайский процессор Loongson 3A6000 собственной архитектуры LoongArch: практическое применение
Оглавление
- Аппаратное обеспечение
- Операционные системы
- Программное обеспечение
- Просмотр видеороликов
- Возможности разгона
- Тонкости практического использования
- Выводы
Китайский процессор Loongson 3A6000 собственной архитектуры LoongArch: тестирование производительности
Продолжаем рассматривать не самый обычный процессор и системы на его основе — китайский Loongson 3A6000, основанный на собственной архитектуре компании. В первой части статьи мы протестировали производительность процессора и ПК на его основе в широком наборе бенчмарков, определив в итоге, что китайский CPU по показателю количества исполняемых инструкций за такт в целом практически догнал западные архитектуры нескольких поколений назад — вроде Zen 1, хотя всё еще очень сильно отстает от современных процессоров AMD и Intel. Но можно ли работать на таких системах, будет ли этот процесс достаточно комфортным и есть ли какие-то подводные камни, сходу незаметные?
Ведь у западных конкурентов есть превосходство не только по тактовой частоте, количеству ядер и итоговой производительности, но и по распространенности архитектуры и по высокому качеству оптимизации под давно всем известную архитектуру x86. А это очень важно в практическом применении, ведь в первую очередь оптимизируют тесты, а необходимое для работы ПО в случае редких архитектур иногда вообще не найти — по крайней мере, в родном исполнении, без необходимости использования бинарной трансляции x86-кода в родной. Но и помимо отсутствия нужных программ и плохой оптимизации программного обеспечения есть практические шероховатости и особенности при работе, которые могут заметно отличаться от привычных для нас систем на основе процессоров AMD и Intel. В этом материале мы как раз их и рассмотрим, благо поговорить есть о чем.
Аппаратное обеспечение
Как мы уже писали, в нашем распоряжении было две разные системы на основе Loongson 3A6000: предварительно собранный китайский ПК, содержащий полный набор аппаратного обеспечения, и отдельная системная плата XC-LS3A6M с напаянным на нее процессором и комплектным воздушным кулером, слегка отличающаяся по возможностям. Процессоры в этих системах — одинаковой модификации, они отличаются только датой изготовления и напаяны прямо на соответствующие системные платы.
Сначала рассмотрим готовую систему компании PNXC, которая изображена на фото в начале статьи. Она основана на системной плате PN-L530A, использующей чипсет 7A2000 и припаянный процессор Loongson 3A6000 модификации HV с комплектным воздушным кулером, а также дополнительными комплектующими, требующимися для работы: накопителем для данных и модулем оперативной памяти. Дополняет этот ПК сравнительно маломощный, но вполне достаточный блок питания и компактный корпус — удобный и просторный, скорее даже излишне большой для столь простой системы.
Система оснащена твердотельным накопителем Kimtigo TP3000 объемом 512 ГБ и одним модулем оперативной памяти DDR4-3200 той же компании Kimtigo, имеющим объем 16 ГБ и тайминги CL22. На плате есть два разъема для памяти, и контроллер Loongson 3A6000 умеет работать в двухканальном режиме, поэтому лучшим выбором была бы установка двух модулей, но в таком случае производителю нужно подбирать совместимые комплектующие, которые заработают на достаточно высокой частоте — далеко не любые модули способны на работу в двухканальном режиме DDR4-3200, а никаких настроек памяти в BIOS Setup нет.
Для охлаждения одной из самых мощных версий рассматриваемого китайского процессора, предназначенного для настольных ПК, используется довольно простая по современным меркам система охлаждения, состоящая из невысокого алюминиевого радиатора и небольшого вентилятора. Такого кулера более чем достаточно для охлаждения Loongson 3A6000, который не нагревался выше 60-65 градусов в наших тестах. На чипсете также есть небольшой алюминиевый радиатор без вентилятора.
Всё остальное в системе вполне привычно для простеньких ПК, есть достаточное количество разъемов: слоты PCIe x16, x8 и x4, четыре SATA-порта, слоты M.2 2280 и 2230, а также Ethernet-розетка, видеовыходы HDMI и VGA, кучка USB-портов (3.0 и 2.0) на передней и задней панелях. Там же есть и аудиоразъемы. А из необычного по современным меркам можно отметить разве что COM-порт, полезный в некоторых специфических применениях, вроде разработки ПО для различных контроллеров.
Вторая система, которую мы опробовали, основана на системной плате XC-LS3A6M, руку к созданию и производству которой якобы приложила известная компания Asus, хотя ее имя нигде не указывается. Плата также использует напаянный процессор Loongson 3A6000, что вполне логично, ведь всё равно возможности апгрейда не предполагается, и имеет предустановленный кулер. Вот так плата выглядит со снятой системой охлаждения:
Система охлаждения для процессора и тут установлена довольно простая, но уже чуть большего размера и несколько более эффективная, пожалуй. Хотя это и не нужно: даже при разгоне Loongson слегка избыточные возможности этого кулера нам не пригодились. Алюминиевый радиатор на чипсете также покрупнее. Но обо всем этом мы еще поговорим чуть позже, в разделе о возможностях разгона процессора.
Системная плата XC-LS3A6M имеет черный текстолит, она стоит несколько дороже условно безымянной зеленой, и предлагает чуть больше возможностей для расширения: количество слотов памяти, PCIe и M.2 у обеих плат одинаковое, но на XC-LS3A6M есть второй сетевой адаптер и разъем для подключения внешнего порта USB 3.2 формата Type C. Без документации непонятны некоторые тонкости работы применяемых контроллеров и разделение линий PCIe, а толковых документов у производителя просто нет.
Плата также довольно простая, но тут есть диагностические возможности в виде динамика и POST-индикатора, и система питания несколько мощнее (что не особенно нужно для текущих вариантов Loongson). А вот то, что у платы есть сразу два гигабитных Ethernet-контроллера, может быть полезно для применения этой системы в сетевой инфраструктуре.
И совсем уж интересно для нас, что у этой платы расширены возможности BIOS Setup: есть настройки разгона и аппаратный мониторинг. Ничего особенного они не дают и давно привычны по x86-системам, но в случае редких CPU и систем на их основе присутствуют далеко не всегда. Декларируется возможность разгона процессора, и по данным китайских исследователей, при использовании воздушной системы охлаждения частоту CPU можно поднять до 2,6 ГГц и выше, а при использовании жидкого азота — вплоть до 3 ГГц. Это мы еще проверим на практике чуть позднее, а сейчас переходим к программной части.
Операционные системы
Разговор о программной стороне вопроса всегда начинается с операционных систем. Понятно, что никаких версий привычной Windows ожидать не приходится, это просто не нужно Microsoft. Так что остаются только специальные версии Linux. Полноценных ОС с официальной поддержкой архитектуры LoongArch на момент подготовки материала было лишь две: Loongnix и UOS. Хотя есть еще и тестовые сборки российской Alt Linux, а со временем поддерживаемых систем станет больше.
Попавшая к нам готовая система PNXC имеет предустановленную операционную систему UOS на базе Linux, а на плате Asus мы использовали в тестах Loongnix, также имеющую в основе Linux, так что сейчас вкратце расскажем о своих впечатлениях от обеих систем, которые отличаются по большей степени внешним видом. Впрочем, применяемые в них оболочки визуально не так уж сильно отличаются от других современных операционных систем.
UOS (то ли Unity Operating System, то ли Unified Operating System) — операционная система на базе дистрибутива Deepin, основанного на Debian, разработанная компанией UnionTech по заказу правительства КНР для замещения иностранных операционных систем. Существуют варианты для настольных и для серверных систем, первые версии вышли еще в 2019 году. UOS ориентирована на китайский рынок и предназначена для замены Microsoft Windows, поддерживает аппаратные платформы Zhaoxin, Loongson, Sunway, а также процессоры на базе архитектуры ARM.
В целом, для работавших с Linux, в UOS не будет ничего особенно нового. Определенным неудобством для нас оказалось то, что для получения прав суперпользователя (root) необходимо зарегистрироваться при помощи телефона, электронной почты или мессенджера WeChat. Причем телефонный вариант не работает, поскольку нужен китайский номер, а на электронную почту код подтверждения приходит настолько поздно, что проходит срок его годности. Так что единственным рабочим вариантом оказалось подтверждение через WeChat, широко распространенный в Китае. Также слегка напрягало отсутствие перевода с китайского языка для части ПО, включая магазин приложений, но об этом позже.
В составе операционной системы есть практически всё самое необходимое для базовой работы, включая интернет-браузер, медиаплеер и магазин приложений, о котором мы еще поговорим. Есть также довольно удобная утилита системного мониторинга, полезная для того, чтобы понять, какое ПО и как использует определенные ресурсы системы, что особенно важно в случае не слишком мощных ПК. В общем же, UOS — это довольно приятно и современно выглядящая операционная система со всеми основными возможностями, необходимыми для обычного пользователя.
Вторая ОС (Loongnix), используемая китайскими системами, также основана на Linux и поддерживается компанией Loongson Technology Corporation. Она существует в изданиях для ПК, для серверов и для встраиваемых систем. Из ее названия понятно, что она предназначена исключительно для процессоров Loongson и не имеет поддержки других архитектур.
Оболочка Loongnix выглядит несколько проще и строже, в ней меньше визуальных «рюшечек», но в остальном это почти то же самое, ведь она основана на той же версии ядра Linux, просто имеет иную графическую оболочку и отличающийся комплектный набор ПО. Настройки в ней тоже попроще, и в целом выглядит она более плоско и… классически, если можно так сказать.
Тут мы столкнулись с той же самой проблемой (не самой большой, но всё же): не все части ПО переведены на другие языки с китайского. И если с мусорной корзиной на китайском можно смириться, то для работы с установщиком пакетов ПО, который тут также полностью на китайском языке, нам в первые разы пришлось воспользоваться переводчиком, чтобы понять, куда вообще нажимать. В основном обе системы имеют перевод на английский и даже на русский, причем вполне приличного уровня, но некоторые фрагменты перевода не получили.
И всё же, при всем сходстве (скорее даже не визуальном, а внутреннем) двух систем, у них есть некоторая разница в производительности, связанная с отличиями в устройстве ОС и разной степенью оптимизации (напомним, что UOS — более универсальная система, предназначенная для разных архитектур, в отличие от Loongnix). Мы уже приводили в первой части статьи таблицу с результатами Stress-NG — специализированной утилиты для комплексного нагрузочного тестирования аппаратного обеспечения большим количеством различных тестов.
UOS | Loongnix | |
---|---|---|
Hash | 542833 | 545535 |
MMAP | 159,6 | 172,7 |
NUMA | 408,4 | 407,5 |
Pipe | 2087589 | 2551110 |
Poll | 423124 | 469813 |
Zlib | 216,9 | 324,4 |
Futex | 1121188 | 1665812 |
MEMFD | 335,8 | 356,7 |
Mutex | 2077631 | 2889099 |
Atomic | 222,3 | 221,2 |
Crypto | 5802 | 5805 |
Malloc | 3775133 | 4882961 |
Cloning | 589,1 | 525,8 |
Forking | 23096 | 27255 |
Pthread | 46018 | 51659 |
AVL Tree | 27,6 | 28,3 |
SENDFILE | 199415 | 191599 |
CPU Cache | 662004 | 702790 |
CPU Stress | 1029 | 1031 |
Semaphores | 7283904 | 8672023 |
Matrix Math | 14175 | 14526 |
Vector Math | 4363 | 4452 |
AVX-512 VNNI | 47350 | 47528 |
Function Call | 5262 | 5351 |
Floating Point | 784,4 | 771,2 |
Matrix 3D Math | 351,6 | 395,8 |
Memory Copying | 636,6 | 701,4 |
Vector Shuffle | 2145 | 2123 |
Mixed Scheduler | 3408 | 4061 |
Socket Activity | 3814 | 5653 |
Wide Vector Math | 16724 | 17212 |
Contex Switching | 1926686 | 2428558 |
FMA | 2780082 | 1563782 |
Vector Floating Point | 1820 | 1916 |
Glibc C String | 2737165 | 2686737 |
Glibc Qsort | 87,2 | 87,5 |
System V | 3183295 | 4151521 |
Судя по полученным результатам, процессор Loongson, работающий под управлением операционной системы Loongnix, чаще всего несколько быстрее, чем при работе в UOS — в отдельных тестах разница доходит до полуторакратной, хотя это скорее исключения. Но разница наблюдалась и в других бенчмарках, в немалом количестве тестов именно Loongnix обеспечивает несколько бо́льшую производительность — чаще всего на 2%-4%, зато стабильно, а иногда получалось и больше.
В частности, на системе с Loongnix на 10% быстрее осуществляется сжатие в форматах 7zip и zstd, gzip был аж на 18% быстрее, а параллельный bzip2 — сразу на 23%. Причем речь именно о сжатии, а вот распаковка ничуть не ускорялась. Некоторое увеличение производительности было отмечено и в криптографических тестах (12%-14% в aircrack-ng и bork), а также в высокопроизводительных вычислениях (parboil и amg). В редких тестах наблюдалось и обратное соотношение производительности: UOS чуть быстрее в rawtherapee и n-queens.
В нашем кратком обзоре операционных систем для Loongson мы не можем обойти стороной российскую разработку: для китайских процессоров с архитектурой Loongarch64 компания «Базальт СПО» подготовила предварительную сборку операционной системы «Альт» на основе Linux с графической средой — пока что это единственная российская ОС, работающая с этой платформой. Ее можно установить на ноутбуки, рабочие станции и сервера на базе Loongson, а затем работать в ней с программами вроде офисного пакета LibreOffice, браузера Firefox, графического редактора GIMP и с другим ПО.
Портирование было выполнено еще в прошлом году, но продолжает развиваться. У разработчиков компании получилось адаптировать свою ОС всего за девять месяцев, и активную поддержку им оказали представители китайского разработчика процессоров, предоставив подробную документацию и серверы для тестирования. На момент написания статьи была доступна сборка на основе графического интерфейса Xfce от середины июня текущего года, в дальнейшем планируется и релиз дистрибутивов для LoongArch64. Мы пока что не тестировали эту ОС подробно, но ее возможности и особенности давно известны пользователям. Единственное, что нужно понимать: это всё еще предварительная сборка ОС с некоторыми шероховатостями и недостатками.
Программное обеспечение
Как мы уже упоминали, в составе операционной системы UOS есть собственный магазин приложений — в современных ОС без этого никуда, пользователю нужна удобная среда для поиска и установки ПО. Магазин этот достаточно продвинутый и обширный, предлагает много возможностей, и его единственный недостаток для пользователей не из Китая — отсутствие перевода большой части надписей с китайского языка на любой другой. Но догадаться или перевести текст переводчиком при помощи камеры мобильного телефона обычно вполне получается.
Есть разделы по категориям ПО, по рейтингу и т. п., поддерживается автоматическое обновление, есть отзывы пользователей — всё как полагается современному магазину приложений. Однако количество представленных программ невелико — несравнимо с возможностями выбора в более популярных системах. К примеру, в магазине нет (по крайней мере, не было на момент подготовки материала) даже полноценного офисного пакета. Ни в комплекте ОС, ни в магазине его не найти, хотя при помощи поиска мы обнаружили на китайском сайте пакет WPS Office в родной для LoongArch64 версии.
WPS Office был ранее известен как Kingsoft Office — это офисный пакет, созданный китайским разработчиком программного обеспечения Kingsoft Corporation в качестве альтернативы Microsoft Office. Этот достаточно продвинутый офисный пакет существует в версиях для разных ОС: Windows, Mac OS, Linux, Android, iOS и HarmonyOS. В нем есть всё необходимое для работы: редакторы текста и таблиц, программа для создания презентаций и т. п.
Есть у WPS свои плюсы и минусы, на которых мы не будем останавливаться, это точно не лучший офисный пакет, но для столь редких систем главное, что он вообще есть и его достаточно легко скачать и установить. Единственное, что слегка напрягло — довольно устаревшая версия 11.1 (см. скриншот), доступная в варианте для LoongArch64, хотя уже существует 12.2 для Windows, поэтому некоторых современных возможностей в ней может не быть, хотя работать вполне можно.
Что касается комфорта при работе, то интереснее всего показалось то, что при выводе информации в разрешении Full HD (1920×1080, поддерживается частота обновления до 120 Гц) работать с документами вполне комфортно даже на системе со слабым встроенным GPU, а вот при выводе в 4K (тут уже будет только 30 Гц) избалованные современными мощными x86-системами пользователи ощутят очень значительные проблемы обновления информации на экране. Причем это связано не только и не столько с частотой обновления 30 Гц, в 4K картинка обновляется весьма неспешно именно из-за слабости встроенного GPU.
Кстати, производительность встроенного видеоядра очень сильно зависит от одноканального или двухканального режима работы памяти. К примеру, в тесте GLmark2 при разрешении Full HD встроенный GPU при одноканальном режиме работы DDR4 набирает всего 40 баллов, а в двухканальном — уже 70 баллов, почти вдвое больше, и улучшение видно на глаз. Да и между разными ОС есть отличия: выше были приведены значения, полученные в UOS, а в Loongnix в двухканальном режиме получилось уже 110 баллов, да и в целом в ней работать несколько удобнее. Хотя UOS несколько красивее. Выбор за пользователем.
Есть еще вариант установки дискретной видеокарты, хотя поддерживаются только не самые современные видеокарты AMD Radeon. Nvidia не предлагает драйверы с открытым исходным кодов, поэтому их не получится скомпилировать под другие процессорные архитектуры. Мы попробовали установить в систему Radeon RX 480 и получили уже почти 5000 баллов в том же GLmark2 — то есть результат выше даже не в разы, а на порядки! Правда, в другом тесте графики GPU Drawing утилиты HardInfo разница между встроенным GPU и Radeon получилась заметно меньше: в одноканальном режиме работы памяти — 2283 балла, в двухканальном режиме — 4108, а с Radeon RX 480 — 13152 балла. Но самое главное, что разница между встроенным видеоядром и довольно слабым дискретным GPU видна даже невооруженным взглядом при обычной офисной работе. Так что мы бы рекомендовали установку дискретной видеокарты — ну, или хотя бы двух модулей памяти для двухканального режима.
Браузеры в обеих ОС примерно одинаковые, они основаны на Chromium с открытым исходным кодом, так что будут вполне привычными для пользователей. Работать в них достаточно комфортно только при небольшом количестве открытых страниц, не слишком обильно заполненных сложной графикой и анимацией, в противном случае система становится не слишком отзывчивой и задержки непозволительно увеличиваются.
В целом можно сказать, что обе системы волне работоспособны и могут обеспечить достаточный комфорт нетребовательным пользователям при использовании несложных документов и не слишком активной работе фоновых задач — но только в разрешении Full HD. Впрочем, столь слабые системы на большее и не рассчитаны, так что значимым недостатком это назвать нельзя.
Просмотр видеороликов
Еще одной важнейшей задачей любого современного ПК является просмотр видеороликов различных форматов в самых высоких разрешениях. Казалось бы, с этим неплохо справляются даже устаревшие мобильные чипы, но они имеют специализированные блоки для аппаратного ускорения декодирования видеоданных, разгружающие остальные компоненты системы от этой задачи. А для встроенного GPU компании Loongson аппаратное ускорение декодирования видео не заявлено.
На практике мы отметили некоторую разницу между операционными системами и медиаплеерами, которая может быть обусловлена, к примеру, разницей в степени постобработки видеоданных. Если брать систему UOS и популярный медиаплеер VLC, то эта связка неплохо справилась лишь со старыми видеоформатами вроде MPEG2 и MPEG4, и только в разрешении Full HD, уже при просмотре H.264 загружает работой центральный процессор на 50%-80%, декодирование в формате H.265 не тянет вовсе, теряя кадры, а почти любой формат в 4K-разрешении даже не пытается выводиться на экран. Потерь кадров при высокой загрузке процессора получается довольно много, и смотреть ролики некомфортно.
Встроенный же в UOS медиаплеер умеет декодировать и 4K, и H.265, но в полноэкранном режиме выводит очень мало кадров, пропуская слишком большую их часть. Он пытается декодировать даже 8К, но совсем уж медленно. То есть если какое-то ускорение тут и работает, то вывод на экран в разрешении 4К всё портит, особенно при одноканальном режиме работы памяти. При переходе к разрешению Full HD и использованию двухканальной памяти плеер вполне прилично проигрывает даже 4К-ролики, хотя загрузка CPU в этом случае бывает по 60%-70%, это зависит от форматов видеоданных. А декодирование HEVC в HDR вообще толком не работает.
Понятно, что можно попробовать перебирать ПО и кодеки, но такой глубокой цели в этот раз у нас не было. Интересно, что в операционной системе Loongnix получилось почти с точностью до наоборот: встроенный в систему плеер довольно медленный и пропускает кадры даже в разрешении Full HD, а вот VLC работает довольно хорошо, хотя и не сильно лучше встроенного плеера в UOS. Потерь кадров всё равно довольно много — см. статистику проигрывания на иллюстрации. И не хватает именно возможностей GPU по декодированию, потому что в системе с установленной дискретной видеокартой Radeon RX 480 всё было намного лучше: практически все видеоролики «летают», кроме разве что 4K HDR HEVC и 8K.
Учитывая подобные возможности (точнее — их отсутствие) встроенного GPU, вовсе не удивительно, что и с проигрыванием потоковых роликов дела обстоят довольно печально. Мы тестировали еще во времена полноскоростного Ютуба, и если с декодированием и выводом роликов в Full HD даже при 60 FPS система справляется (правый скриншот), пропущенных кадров очень немного, то в 4K при 60 FPS смотреть толком не получалось — пропускается каждый второй кадр, и плавного воспроизведения достичь не удалось. В общем, снова подтверждается вывод из «офисной» части обзора: мощности системы на базе Loongson вполне хватает для разрешения Full HD, но недостает для чего-то большего.
Возможности разгона
Мы уже писали, что одна из протестированных системных плат (XC-LS3A6M) предлагает некоторые возможности по разгону процессора, и в ее BIOS Setup действительно есть соответствующие настройки. К сожалению, у нас под рукой не было аппаратных возможностей по захвату изображения в таком режиме, а привычный программный метод снятия скриншотов в этих BIOS Setup не сработал, так что далее будут фотографии экрана с соответствующими пунктами.
В подразделе настройки производительности (в его английском названии есть опечатка) есть возможность выбора профиля разгона, изменения количества шагов тактовой частоты, выбора самой частоты CPU, а также регулировка напряжения процессора. В принципе, всё необходимое для разгона CPU вроде бы имеется, но мы бы хотели видеть еще и возможность выбора частоты и настройку таймингов памяти.
На выбор оверклокерам дается аж четыре предустановленных разгонных профиля, отличающихся максимальной устанавливаемой частотой, но единственным полезным на деле является ручной профиль, позволяющий пользователю самому выбрать собственные значения из предлагаемых. Напряжение процессора можно изменять от 1,15 В до 1,30 В с шагом в 0,05 В…
…а частоту CPU при самом широком профиле уровня Fine-Tuning можно поднять с родных 2,5 ГГц аж до 3,2 ГГц! Но шаг между значениями переменный, и если ближе к максимальным значениям он составляет 25 МГц, то между 2,5 и 2,7 ГГц — лишь 100 МГц, и с учетом «сверхмощного» разгонного потенциала Loongson 3A6000 мелкие шаги имели бы определенный смысл как раз в нижнем диапазоне.
Что касается самого разгонного потенциала, то хотя некоторые китайские энтузиасты при помощи системной платы XC-LS3A6M таки смогли разогнать Loongson 3A6000 с использованием воздушного охлаждения до 2,63 ГГц (вероятно, с иной версией BIOS, потому что у нас такого значения в списке доступных не было), а с жидким азотом — и до 3,0 ГГц, наши опыты были не столь удачными. Система запускалась и на 2,7 ГГц, но тесты производительности со временем вызывали программные ошибки и зависания, что говорит о невозможности стабильной работы CPU на такой частоте.
Вполне возможно, Loongson 3A6000 способен на достижение высоких частот при использовании жидкого азота, но с обычным воздушным охлаждением наш конкретный экземпляр процессора ограничен частотой 2,6 ГГц, и это нельзя назвать серьезным разгонным потенциалом. При частоте 2,8 ГГц наша система вообще не стартовала, при 2,75 ГГц и напряжении 1,30 В выдавала слишком много ошибок (при этом перегрева не наблюдалось), при 2,70 ГГц (пробовали и 1,30, и 1,25 В) ошибок было меньше, но они никуда не исчезли, а на частоте 2,60 ГГц система работала, но обеспечивала лишь 4% прироста. И дело точно не в системе охлаждения, так как CPU разогревался не слишком сильно. Впрочем, в любом случае поставить водяную систему охлаждения у нас не получилось из-за мешающих этому элементов на плате, расположенных слишком близко к процессорному разъему, хотя сами посадочные места кулера совпадают с тем, что использует Intel для своих современных процессоров.
Результаты некоторых успешно завершенных тестов показали, что при частоте 2,7 ГГц (что соответствует +8% к родной частоте) система на базе Loongson 3A6000 работала на 6%-8% быстрее почти во всех отработавших без ошибок тестов, включая все тесты сжатия данных и некоторые из синтетических тестов: coremark, core-latency и cachebench — неудивительно, что увеличение тактовой частоты соответственно сказалось и на производительности кэш-памяти. И если у китайских инженеров в будущем получится заметно повысить тактовые частоты их процессоров, то это сразу же даст соответствующий прирост производительности.
Тонкости практического использования
Ну а нам осталось поговорить о некоторых деталях практического использования систем на основе Loongson, не охваченных в предыдущих разделах. В частности, речь идет об эмуляции x86 при помощи двоичной трансляции x86-кода в LoongArch64. Для ускорения этого у процессоров Loongson есть специальные возможности, но… всё не так просто. В отличие от Apple, которая легко и быстро сделала режим эмуляции x86-кода для своих устройств, так как и аппаратное, и программное обеспечение контролирует одна компания, в мире Windows и Linux всё немного сложнее. Microsoft и вовсе не особо заинтересована в LoongArch-версии Windows, поэтому приходится ограничиваться Linux.
Хотя сама эмуляция x86 является в основном программной задачей, для более эффективной работы требуются определенные аппаратные возможности — для повышения производительности. И у Loongson есть специальные инструкции для ускорения трансляции (LBT, Loongson Binary Translation), но даже в случае их использования китайский процессор не сможет исполнять x86-код так же эффективно, как родной для себя или как это делают процессоры AMD и Intel с x86-кодом. При эмуляции всегда будут накладные расходы на трансляцию, зависящие от нагрузки, поэтому критически важные для производительности приложения очень желательно компилировать именно в родной LoongArch64-код.
И даже при том, что у Loongson есть инструкции 128-битной расширенной векторной обработки LSX и 256-битные инструкции расширенной векторной обработки LASX, полностью эмулировать тот же набор инструкций AVX2, не говоря о AVX-512, не так уж просто, ведь инструкции явно не полностью соответствуют тем, что есть у x86-систем. Перевод AVX/AVX2 в LSX/LASX — очень непростая задача, хотя и наверняка решаемая с той или иной эффективностью.
Мы опробовали работу LATX на системе Loongnix, и если совсем вкратце, то это годится лишь для очень важных и нужных программ, не существующих в нативном LoongArch64-варианте, так как тот же архиватор 7zip в режиме x86-эмуляции с двоичной трансляцией LATX работает почти вдвое медленнее родного для этого процессора LoongArch64-кода такого же архиватора. При помощи дополнительного ПО в виде Wine можно даже поиграть в ПК-игры (для поддержки современных версий DirectX нужен еще и DXVK, и всё это вместе настроить и заставить работать не так уж просто), но в результате получается настолько низкая кадровая частота, что в этом просто не остается никакого практического смысла.
Выводы
В первой части статьи мы постановили, что Loongson 3A6000 по эффективности и количеству исполняемых инструкций за такт примерно равен Zen первого поколения: китайский процессор почти всегда был близок к Ryzen 5 1500X, работающему на пониженной частоте 2,5 ГГц. Сама Loongson сравнивает свой 3A6000 чаще с чем-то вроде Intel Core i3-10100, но и этот процессор имеет более высокую тактовую частоту 4,3 ГГц по сравнению с 2,5 ГГц у китайского CPU. А ведь у AMD и Intel есть и модели с бо́льшим количеством вычислительных ядер и еще более высокой тактовой частотой. Так что 3А6000, который на сегодня является лучшим процессором для настольных ПК этой китайской компании, вряд ли может конкурировать даже с сильно устаревшими процессорами AMD и Intel.
Если же говорить о состоянии дел с непопулярным и не распространенным ПО, то оно или вообще отсутствует в версии для LoongArch, или в нем нет специфических оптимизаций под его архитектуру. Не все программы умеют использовать SIMD-наборы инструкций китайского процессора, что требуется для высокой производительности, и в повседневной работе не любое нативное ПО будет работать столь же быстро, как на близких по теоретической мощности процессорах AMD и Intel. Что-то придется запускать в режиме двоичной трансляции x86-кода, что еще больше снижает производительность систем на основе китайского CPU.
И хотя Loongson 3A6000 является самым мощным процессором китайской разработки и производства из предназначенных для настольных ПК, пользователи, избалованные современными процессорами Intel и AMD, вряд ли посчитают приемлемой задумчивость и общую медлительность систем на основе китайского CPU. Причем дело даже не только в вычислительных ядрах процессора. На практике еще бо́льшим ограничением оказалось встроенное видеоядро, которое не обладает высокой скоростью вывода информации и, судя по всему, не имеет аппаратных блоков ускорения декодирования видеоданных. Так что мы бы рекомендовали применение хоть самой простой, но всё же дискретной видеокарты уровня хотя бы Radeon RX 550.
В итоге системы на базе процессора Loongson 3A6000 подходят только для самых простых офисных систем в тех сферах, где по тем или иным причинам непозволительно применение западных процессоров. ПК на лучшем китайском CPU обеспечит минимальный комфорт при работе с несложными документами и неспешный веб-серфинг. А для приемлемой плавности при просмотре видео придется установить дискретную видеокарту или хотя бы использовать со встроенным GPU двухканальную память — и ограничиться разрешением Full HD.
Производительности и возможностей полностью китайского процессора на практике достаточно лишь для несложных задач, да и то с некоторыми дополнительными ограничениями. Большинство китайских потребителей, которым потребуется перейти на процессоры собственного производства, сделают это без проблем: производительности для простых повседневных задач вроде браузера, почты и офиса будет вполне достаточно для подавляющей части пользователей ПК. Для большего же инженерам компании Loongson предстоит еще очень много работы, чтобы достичь уровня хотя бы не самых современных CPU и GPU. Тем не менее, можно предположить, что их отставание от западных разработок будет сокращаться. Главное — обратить большее внимание на программную часть, которая оказывает куда большее влияние на принципиальную возможность использования ПК на основе Loongson, чем сам по себе процессор.
В целом, платформа у китайской компании получилась вполне жизнеспособная, в офисном и домашнем форматах ее можно использовать уже сейчас, но только если не предъявлять требований к выбору конкретного ПО, которое может существовать лишь в виде x86-совместимого. Порой приходится менять все привычки, переходя с одного ПО на другое — как в случае офисных пакетов, где Microsoft Office придется заменить на менее функциональный WPS Office, имеющий значительные ограничения для активных пользователей пакета производства Microsoft. Основная беда всех слабо распространенных архитектур заключается или в полном отсутствии необходимого для них ПО или в недостатке оптимизации, так что дело за развитием соответствующих средств разработки и переносом на китайскую архитектуру более привычных программных пакетов. Дело это небыстрое, и явно не все производители ПО решат выпускать специальные версии для Loongson. Но если устранить существующие недостатки в виде малого количества родных версий ПО под эту архитектуру, то системы на основе китайских CPU станут еще более подходящими для повседневного использования.
6 сентября 2024 Г.
Источник: ixbt.com