Производительность ARM процессоров каждый год увеличивается и все ближе приближается к x86 процессорам. Компания Apple давно отказалась от процессоров Intel в пользу процессоров собственной разработки на ARM архитектуре. Но домашний/офисный ПК это не только процессор, но и софт, драйвера, и подключение любых устройств из коробки. Компания Shenzhen Xunlong Software вначале 2023 г. выпустила одноплатный компьютер Orange PI 5 Plus на базе высокопроизводительного процессора Rockchip RK3588 с 32 ГБ ОЗУ и возможностью подключения NVMe SSD дисков. По техническим характеристикам такой одноплатный компьютер сопоставим с домашним/офисным ПК. Проверим на сколько комфортно работать за таким одноплатником, смотреть YouTube, видео, и конечно же поиграем, установим Steam от Valve. Но самое главное оценим работу системы «из коробки» т.е. без танцев с бубном. Вначале рассмотрим характеристики Orange PI 5 Plus, затем процессор Rockchip RK3588, установку и настройку системы, подключение периферийных устройств, и посмотрим, на сколько хорош Linux на ARM для домашнего использования. В итоге рассмотрим какие существуют преграды замены текущих x86 систем на ARM.
❯ Обзор Orange PI 5 Plus
Orange PI 5 Plus представляет собой одноплатный компьютер, построенный на процессоре
Rockchip RK3588 2.4GHz, четыре ядра ARM Cortex-A76 + четыре ядра ARM Cortex-A55, распаяно два банка памяти LPDDR4x по 16 ГБ.
Вид платы сверху
Вид платы снизу
На нижней стороне расположен слот M.2 2280 M-Key для подключения диска NVMe SSD (PCIe 3.0 x4), поддерживаются планки емкостью до 2 ТБ.
Помимо SSD диска можно докупить модуль памяти eMMC емкостью 16/32/64/128/256 ГБ и установить в eMMC сокет.
Сокет для подключения модуля eMMC
На верхней стороне платы расположен слот PCIe M.2 E-KEY, но уже на 2-е линии для подключения модулей PCIe 2.0 x1/PCM/UART/USB2.0, 2230 Wi-Fi6/BT или диска NVMe SSD размером 2230.
Слот PCIe M.2 E-KEY
Два разъема Ethernet на 2.5 Гбит/сек по витой паре, с учетом установки беспроводного модуля на PCIe интерфейсе, позволят сделать из Orange PI 5 Plus, например универсальный шлюз безопасности (UTM, unified threat management) или другое сетевое устройство.
Видеоускоритель GPU ARM Mali-G610 способен воспроизводить видео на два монитора HDMI в качестве 8K@60FPS, причем на каждый. Так же поддерживается вывод HDMI сигнала через порт USB Type-C. Дополнительно на плате распаян один порт HDMI-input с захватом видео до 4K@60FPS.
Разъемы Ethernet и HDMI
Особенно замечательно наличие распаянной SPI FLASH памяти на 16 MB. SPI FLASH память необходима для размещения загрузчика при запуске ОС с NVMe диска, в случае отсутствия, загрузчик приходится располагать на карте памяти microSD или eMMC модуле.
SPI FLASH память
Благодаря большому количеству распаянных элементов на плате, таких как USB, HDMI и Ethernet разъемов, очень хорошо рассеивается тепло. Процессор даже без радиатора не сильно греется, но радиатор все равно требуется. Кулер подключается на разъем ШИМ (PWM) с напряжением в 5В, PWM позволяет программно управлять частотой вращения вентилятора из ОС.
Orange Pi 5 Plus c кулером
Вариант с радиатором
Есть еще вариант с алюминиевым радиатором.
Встроенный в Rockchip RK3588 нейронный процессор NPU поддерживает INT4/INT8/INT16/FP16, а вычислительная мощность составляет до 6 TOPs. Процессор Apple A16, который используется в iPhones 14 и 15 серии, содержит NPU мощностью до 15.8 TOPs, что всего в ~2.5 больше, чем в Rockchip RK3588. В середине 2024 года инженер Томеу Визосо (Tomeu Vizoso) опубликовал
открытый драйвер ядра для нейронного процессора RK3588, что позволит использовать NPU на полную мощность без каких либо ограничений.
«Драйвер ядра может полностью использовать три ядра NPU, что дает нам возможность одновременно выполнять 4 вывода обнаружения объектов, такие как приведенный ниже, в потоке, со скоростью почти 30 кадров в секунду» — заявляет Томеу Визосо.
❯ Процессор Rockchip RK3588 vs RK3588S
В начале этого года на Хабре проверяли,
Может ли Orange Pi 5 стать ПК? Но в Orange Pi 5 процессор Rockchip RK3588S, а в Orange PI 5 Plus процессор Rockchip RK3588 без индекса «S». Казалось бы всего лишь одна буква, но разница в возможностях существенная.
Таблица сравнения RK3588 vs RK3588S:
В попугаях производительность процессоров
RK3588 и
RK3588S приблизительно одинаковая. К
RK3588 можно подключить два HDMI монитора, а вот к
RK3588S только один HDMI монитор. Но у
RK3588 PCIe версии 3.0 и вдвое больше линий на передачу данных по сравнению с
RK3588S, что означает большую производительность дисковой подсистемы, а значит и показатели производительности будут лучше.
❯ Операционные системы
Образы ОС поставляются разработчиком платы
Shenzhen Xunlong Software, сообществом
Armbian, инженером
Joshua Riek, и другими второстепенными поставщиками. Доступы варианты ОС: Ubuntu, Debian, Android и Windows.
Android в качестве полноценной замены ОС для домашнего/офисного ПК не подойдет. Windows сваливается в BSOD на этапе установки, возможно из-за проблем адресации памяти в 32 ГБ, поэтому будет рассмотрен в следующих постах. В образах
Armbian не работало аппаратное декодирование видео в браузере, хотя тест графики прошел успешно и ускорение GPU заработало.
На данный момент самые лучшие образы по критериям стабильности и функциональности это образы от Joshua Riek. Его проект
GitHub Joshua-Riek/ubuntu-rockchip предназначен для портирования Ubuntu на одноплатные компьютеры построенные на базе SoC Rockchip RK35XX. Образы собираются на базе Ubuntu 22.04 LTS (Rockchip Linux 5.10) и Ubuntu 24.04 LTS (Rockchip Linux 6.1), пакетный менеджер использует официальные репозитории Ubuntu, 3D аппаратное ускорение работает посредством драйвера panfork, рабочий стол GNOME работает на Wayland, браузер Chromium без лагов воспроизводит видео YouTube качеством 4K, видеоплеер MPV так же воспроизводит видео 4K.
Помимо плат Orange PI, проект поддерживает и другие платы от Radxa, NanoPi, NanoPC, ArmSoM.
На
странице загрузок для Orange PI 5 Plus доступны следующие образы:
- Ubuntu 22.04 LTS Desktop with Linux 5.10
- Ubuntu 22.04 LTS Server with Linux 5.10
- Ubuntu 24.04.1 LTS Desktop with Linux 6.1
- Ubuntu 24.04.1 LTS Server with Linux 6.1
- Ubuntu 24.10 LTS Desktop with Linux 6.11
- Ubuntu 24.10 LTS Server with Linux 6.11
Образ для работы:
Ubuntu 24.04 LTS Desktop with Linux 6.1
Linux kernel: 6.1.0-1025-rockchip, Размер: 1.7 GB, Дата релиза: 4 сентября 2024
Образ основан на Ubuntu 24.04 LTS (Noble Numbat)
Файл:
ubuntu-24.04-preinstalled-desktop-arm64-orangepi-5-plus.img.xz
Пока готовился пост, вышел релиз
v2.4.0 от 23 ноября 2024. В версии Ubuntu 24.04.1 устранены некоторые проблемы видеоускорения в браузере, в частности тест WebGL Aquarium выполняется без артефактов при любых параметрах.
❯ Аппаратная конфигурация
Wi-Fi и Bluetooth
На Orange PI 5 Plus нет чипа Wi-Fi/Bluetooth, подразумевается, что пользователь установит модуль Orange Pi wireless module R6 в слот PCIe M.2 E-KEY. Модуль комбинированный Wi-Fi6+BT5.2, построен на чипе RTL8852BE-CG (PCIE+USB).
Модуль Orange Pi wireless module R6
Согласно отзывам, Wi-Fi работает отлично, но при одновременном использовании Wi-Fi и BT у BT возникают проблемы, дополнительно еще и антенну необходимо каким-то образом закрепить на корпусе. Поэтому для замены Wi-Fi6+BT5.2 модуля были взяты следующие USB донглы:
- Wi-Fi: Comfast 1300Mbps CF-812AC RTL8812BU на USB3.0;
- Bluetooth: WIFI+BT5.0 RTL8723BU (Wi-Fi не используется т.к. работает только на 2.4 ГГц).
USB донглы Comfast CF-812AC и WIFI+BT5.0 RTL8723BU
NVMe SSD
Вначале в качестве диска NVMe SSD был взят
KingSpec M2 SSD NVMe 512 ГБ PCIe 3.0, но как потом выяснилось, диск очень сильно греется, в простое температура достигала 54 °C. Диски KingSpec существенно дешевле аналогов из-за использования дешевых чипов памяти. Но дешевые чипы работают медленно, поэтому KingSpec, дабы показать хорошие результаты скорости, просто поднял частоту работы. В результате это привело к сильному перегреву и быстрой деградации памяти. Согласно отзывам покупателей, диски KingSpec долго не живут. У диска высокое энергопотребление, в случае использование слабого блока питания система может не запуститься, что собственно и получилось до покупки более мощного блока питания.
Поэтому был взят другой китайский диск Fanxiang S500 Pro PCIe 3.0x4 M.2 NVMe на 512 ГБ с хорошими скоростными характеристиками. В документации к плате фигурировал этот диск, что означало как минимум гарантированную совместимость и работоспособность.
Fanxiang S500 Pro PCIe 3.0x4 M.2 NVMe на 512 ГБ
Корпус
Из всех доступных корпусов был выбран металлический корпус
ZP-0150 от 52Pi. Корпус подошел идеально без использования напильника. Все остальные корпуса, включая корпус радиатор на процессор, на субъективный взгляд хуже, либо качество исполнения низкое, либо проблемы с охлаждением. Единственный недостаток данного корпуса это отсутствие отверстий под антенны в случае подключения беспроводного модуля, и подписей к портам.
Металлический корпус 52Pi ZP-0150
❯ Смета
Если собираетесь подключить диск NVMe SSD и/или задействовать GPU, то обязательно необходимо наличие блока питания на 5V/4A. Стандарты питания по USB, такие как Power Delivery, Quick Charge, и им подобные не поддерживаются.
Стоимость комплекта составила ~260 зеленых бумажек, или по курсу 1 USD ~ 95 RUB, ~ 24 700 рублей. Доставка вышла на 26.81 USD. Итого весь комплект с доставкой обошелся в ~ 27 300 рублей.
❯ Запись образа ОС и первый запуск
Проще всего
образ записать на карту памяти microSD используя утилиты
balenaEtcher или
usbimager. В некоторых случаях balenaEtcher некорректно записывает образы на microSD, в этом случае используйте usbimager.
Решение проблемы с kernel panic
После запуска ОС может возникнуть ситуация
kernel panic из-за записанной информации в SPI FLASH память.
Первым делом после запуска системы очистим содержимое SPI FLASH памяти следующим образом:
sudo dd if=/dev/zero of=/dev/mtdblock0 count=4096 bs=512 status=progress;sync
sudo reboot
или так:
sudo apt update
sudo apt install mtd-utils -y
sudo flash_eraseall /dev/mtd0
sudo reboot
Обновление системы
Затем обновим систему:
sudo apt update
sudo apt upgrade -y && sudo apt dist-upgrade -y
sudo reboot
Перенос системы на NVMe SSD
Для начала выясним, обнаружился ли NVMe SSD диск командой
lsblk. Команда
lsbl выводит список блочных устройств. Перечисляется информация обо всех блочных устройствах, которыми являются разделы жестких дисков и других устройств хранения данных, например, карт памяти microSD и Flash-накопителей.
anton@opi5plus:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 69.2M 1 loop /snap/core22/1590
loop1 7:1 0 94.4M 1 loop /snap/lxd/29951
loop2 7:2 0 33.7M 1 loop /snap/snapd/21761
mtdblock0 31:0 0 16M 0 disk
mmcblk1 179:0 0 29.7G 0 disk
└─mmcblk1p1 179:1 0 29.7G 0 part /
nvme0n1 259:0 0 476.9G 0 disk
└─nvme0n1p1 259:1 0 476.9G 0 part
Из списка, устройство
/dev/nvme0n1 как раз является NVMe SSD диском. Перенесем систему с карты памяти microSD на SSD диск, предварительно его очистив. Удаление информации на NVMe SSD диске:
sudo dd if=/dev/zero of=/dev/nvme0n1 count=4096 bs=512 status=progress;sync
или используя утилиту nvme-cli, проект
GitHub linux-nvme/nvme-cli.
sudo apt update && sudo apt install nvme-cli -y
sudo nvme format /dev/nvme0 --namespace-id=1
sudo nvme format /dev/nvme0n1
Перенос системы на NVMe SSD диск:
sudo ubuntu-rockchip-install /dev/nvme0n1
Теперь запишем загрузчик U-Boot в память SPI FLASH, без него возможен запуск только с microSD и eMMC памяти:
sudo u-boot-install-mtd
sudo shutdown now
В случае отсутствия памяти SPI FLASH, загрузчик U-Boot необходимо размещать на microSD и eMMC. Выключаем компьютер и извлекаем microSD карту. Более детально по командам в
Wiki Ubuntu 24.04 LTS.
Если хотите заморозить обновление ядра Linux, дабы избежать проблем работы устройств после очередного обновления ядра, то необходимо выполнить следующую команду:
sudo apt-mark hold linux-rockchip linux-image-rockchip linux-headers-rockchip linux-tools-rockchip
Остальные команды утилиты apt-mark
Для снятия блокировки обновления, выполнить команду:
sudo apt-mark unhold linux-rockchip linux-image-rockchip linux-headers-rockchip linux-tools-rockchip
Показать все зафиксированные пакеты с меткой hold:
sudo apt-mark showhold
❯ Системная информация
Получим системную информацию:
Запуск утилиты neofetch
Запуск утилиты screenfetch
Разрешение монитора составляет 1080p, все дальнейшие работы, тесты выполняются при таком разрешение. Не смотря на то, что GPU не распознался, 3D ускорение работает исправно.
Системная информация GNOME
В окне оболочки GNOME видеоадаптер отображается корректно.
lsb-release, uname
anton@opi5plus:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu 24.04.1 LTS"
anton@opi5plus:~$ uname -a
Linux opi5plus 6.1.0-1025-rockchip #25-Ubuntu SMP Mon Aug 26 23:01:14 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux
anton@opi5plus:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.1 LTS
Release: 24.04
Codename: nobleв
Запуск утилиты htop
После запуска ОС и входа в сеанс пользователя, занимаемый объем ОЗУ составляет ~1 ГБ.
❯ Работа устройств
HDMI
На плате располагаются три порта HDMI с обозначениями:
- HDMI_TX2 — второй монитор;
- HDMI_TX1 — первый монитор;
- HDMI_RX — порт hdmi-input для захвата видео, можно использовать как KVM для другого компьютера.
Первый монитор подключаем на средний порт
HDMI_TX1.
Подключение HDMI монитора
Вывод по HDMI на два монитора работает.
Аудио
В системе зарегистрировано 4 устройства вывода звука:
- Analog Output-DP0 — разъем MX1.25 2P расположенный на самой плате для подключения небольшого монофонического динамика мощность до 2W;
- Speakers-ES8388 HiFi — стандартный аналоговый вывод на 4 контакта (3.5 mm TRRS jack);
- Analog Output-HDMI0 и Analog Output-HDMI1 — вывод звука по HDMI интерфейсу.
aplay -l
anton@opi5plus:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: rockchipes8388 [rockchip-es8388], device 0: dailink-multicodecs ES8323 HiFi-0 [dailink-multicodecs ES8323 HiFi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: rockchipdp0 [rockchip-dp0], device 0: rockchip-dp0 spdif-hifi-0 [rockchip-dp0 spdif-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: rockchiphdmi0 [rockchip-hdmi0], device 0: rockchip-hdmi0 i2s-hifi-0 [rockchip-hdmi0 i2s-hifi-0]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 3: rockchiphdmi1 [rockchip-hdmi1], device 0: rockchip-hdmi1 i2s-hifi-0 [rockchip-hdmi1 i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
Поддержка вывода звука реализована полностью, каких либо проблем не обнаружено.
Wi-Fi
Соединение Wi-Fi по 2.4 ГГц, как и по 5 ГГц устойчиво, проблем со связью не замечено. Только иногда адаптер Comfast после запуска системы не видел точки доступа на 5 ГГц, проблема решалась обычной перезагрузкой. В чем причина, в ОС или драйверах сложно сказать.
Bluetooth
Bluetooth в адаптере WIFI+BT5.0 RTL8723BU работает из коробки. Для теста были подключены наушники UGREEN HiTune Max5 с поддержкой Hi-Res LDAC и мышь Rapoo 7200м.
Раздел Settings > Bluetooth
Кодек
LDAC поддерживается без каких либо дополнительных манипуляций.
Раздел Settings > Sound
В разделе
Settings > Power можно увидеть уровень заряда Bluetooth устройств.
Раздел Settings > Power
В ОС создается профиль Bluetooth устройства с названием «opi5plus» к которому можно подключиться для передачи аудиопотока, т.е. использовать Orange PI 5 Plus как Bluetooth колонку. Дополнительно еще можно передавать файлы.
Интерфейс Android
❯ Веб-браузер Chromium и Firefox
Нативную поддержку Linux ARM64 в браузер Chrome еще не подвезли. Компания Google только в начале 2024 года разрадилась на нативную поддержку ARM64 процессора для Windows 11, видимо очередь до Linux еще не скоро дойдет, учитывая, сколько времени уже существует версия Windows для ARM.
Поэтому на выбор только два основных браузера это Chromium и Firefox.
Браузеры Chromium и Firefox
Оценка производительности
В бенчмарке
Speedometer3.0 браузер
Chromium версия 114 набрал
3.43 попугая, браузер Firefox версия 131 набрал
4.49 попугая.
Вкладки открываются быстро, скроллинг страниц работает без тормозов, субъективно Firefox работает шустрее Chromium, что подтверждается бенчмарком. Для сравнения скорости можете данный бенчмарк запустить на своем ПК.
Бенчмарк Speedometer3.0, браузер Chromium версия 114
Тест WebGL Aquarium
Тест
WebGL Aquarium графики в браузере Chromium canvas 1024×1024, все настройки по умолчанию.
Тест WebGL Aquarium в браузере Chromium
Показал:
- при 500 рыбках — 60 FPS;
- при 1 000 рыбках — 60 FPS;
- при 5 000 рыбках — 34 FPS;
- при 10 000 рыбках — 19 FPS;
- при 15 000 рыбках — 13 FPS;
- при 20 000 рыбках — 10 FPS;
- при 25 000 рыбках — 6 FPS.
Сравнение скорости работы браузера на процессорах Rockchip RK3588, BCM2712, Intel N100, Intel Core i7-3520M
Сравним скорость работы браузера с
Raspberry Pi 5,
Radxa X4 и процессором
Intel Core i7-3520M@2.90GHz AMD64, по тесту второй версии (
Speedometer 2.0) т.к. результаты есть только для этой версии.
Raspberry Pi 5 в представление не нуждается, одноплатный компьютер на базе
SoC BCM2712. В BCM2712 входит четыре ядра ARM Cortex-A76, в то время как в Rockchip RK3588 в дополнение еще включено четыре ядра ARM Cortex-A55.
Radxa X4 одноплатный компьютер на базе процессора
Intel N100. В процессор Intel Processor N100 входит четыре ядра, работающие на частоте 3.4 ГГц, дата выхода 3 января 2023, предназначен для мини-ПК бюджетного сектора. Максимальный поддерживаемый объем RAM составляет 16 ГБ. Средняя стоимость Radxa X4 варианта с 16 ГБ RAM
147 USD. Стоимость Orange PI 5 Plus с 16 ГБ
144 USD. Сопоставимая стоимость платы Radxa X4, объема ОЗУ, наличие подключения SSD диска, позволяет ее зачислить в разряд аналогов Orange PI 5 Plus.
Процессор
Intel Core i7-3520M установлен в бюджетном ноутбуке
Lenovo Z500, год выпуска 2012, просто для сравнения скорости работы с ноутбуком 12-ти летней давности.
Таблица сравнения скорости по бенчмарку Speedometer 2.0 и WebGL Aquarium:
Сравнение процессоров по CPU Benchmarks
На cpubenchmark.net процессор
Rockchip RK3588 набирает
:
- 4398 попугаев в многопоточном режиме;
- 1477 попугаев в однопоточном режиме.
Сравнение процессоров на CPU Benchmarks
Вывод по работе браузеров
Из таблицы видно, что Intel N100 обходит Rockchip RK3588 практически на четверть по производительности. Но, не смотря на это, разница скорости работы браузера более чем в 2 раза в пользу Intel N100. Такая же история и в тесте WebGL Aquarium, 13 FPS против 32 FPS у Intel N100. Intel Core i7-3520M слабее на 35% процессора Rockchip RK3588, но скорость работы браузера выше в 2 раза.
На Хабре в посте
Стоит ли переходить на компьютер с ARM-процессором в 2024 году в повестке выхода ноутбука на процессорах Snapdragon X Elite и Snapdragon X Plus заявили что: «ARM-процессоры отлично подходят для офисных задач, веб-серфинга и мультимедийных приложений.» Не верьте торговцам, пока не увидите конкретных результатов тестов. При сопоставимой стоимости устройств,
скорость работы браузера не в пользу ARM платформы из-за отсутствия оптимизации под эту архитектуру (решения Apple не в счет, только Linux и Windows).
Просмотр видео
Как заявляет Joshua Riek, система должна без проблем воспроизводить видео и YouTube качеством до 4K, но у меня нет такого монитора для проверки этого утверждения. Оба браузера Chromium и Firefox воспроизводят видео с Youtube без лагов.
Воспроизведение YouTube
Видео в качестве 1080p кодированное кодеком H.264 воспроизводится без задержек, за исключением кодека H.265. В плеере MPV Media Player (пакет
mpv) некоторые видео, включая кодированные кодеком H.265 нормально не играют, но это сугубо программная проблема кодеков/плеера, потому что в домашнем кинотеатре
Kodi все видео воспроизводится прекрасно.
Установка дополнительных кодеков и Kodi
Ubuntu предоставляет
пакет ubuntu-restricted-extras содержащий различные видео и аудио кодеки, а так же некоторые шрифты Microsoft. Для установки выполните команду:
sudo apt update && sudo apt install ubuntu-restricted-extras
Для установки
Kodi выполните команду:
sudo apt update && sudo apt install kodi
Установки плеера MPV Media Player:
sudo apt update && sudo apt install mpv
Установка VLC плеера:
sudo apt update && sudo apt install vlc
❯ Транслятор Box86/Box64 — исполнение x86/amd64 приложений
Бинарный транслятор
Box86 позволяет запускать программы x86 Linux (например, игры) на системах Linux, отличных от x86, например на ARM (хост-система должна быть 32bit little-endian).
Box86 использует собственные версии некоторых «системных» библиотек, таких как
libc,
libm,
SDL и
OpenGL, поэтому его легко интегрировать и использовать с большинством приложений, причем производительность в некоторых случаях может быть сопоставима с запуском на нативной x86 системе.
Транслятор Box64 — это 64-битная версия Box86. Она используется для запуска программ архитектуры x86_64 на Linux ARM64 (т. е. aarch64). Он также может работать на устройствах с процессорами архитектуры RISC-V и Loongarch.
Скорость работы через транслятор Box86/Box64 может составить 50-100% от исходного нативного запуска приложения на x86 процессоре. Наиболее сложно добиться хорошей скорости в играх. Например, если взять проект
OpenArena, то скорость на ARM составит 80% от нативной скорости работы.
Со списком доступных игр для запуска можете ознакомиться по ссылке
Compatibility list Box86/Box64.
Проекты,
GitHub ptitSeb/box64 и
GitHub ptitSeb/box86.
Установка Box86/Box64
Проект не формируем релизы с июля 2024 года, поэтому вы можете установить только версию от последнего или любого другого Commit, соответственно это вариант установки из исходного кода. Еще есть проект, который формирует бинарные пакеты каждые 24 часа с момента последнего Commit.
Установка из исходного текста
Установим зависимости для Box86/Box64, установку, как и дальнейший запуск приложений необходимо выполнять с правами обычного пользователя (не root):
sudo dpkg --add-architecture armhf
sudo apt update && sudo apt install build-essential git cmake gcc-arm-linux-gnueabihf libc6-dev-armhf-cross libappindicator1 libnm0 libtcmalloc-minimal4 binfmt-support liblttng-ust-dev libcairo2:armhf libgmp10:armhf libvulkan1:armhf libudev-dev:armhf -y
Установка Box64 из исходного текста:
git clone https://github.com/ptitSeb/box64
cd box64
mkdir build; cd build; cmake .. -DRK3588=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo
make -j4
sudo make install
Так же установим Box86:
cd ~
git clone https://github.com/ptitSeb/box86
cd box86
mkdir build; cd build; cmake .. -DRK3588=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo
make -j4
sudo make install
Поддержку 3D ускорения устанавливать не требуется т.к. уже все необходимые пакеты и драйвера установлены, но если не работает, то выполните следующие команды:
sudo add-apt-repository ppa:liujianfeng1994/panfork-mesa
sudo add-apt-repository ppa:liujianfeng1994/rockchip-multimedia
sudo apt update
sudo apt dist-upgrade -y
sudo apt install mali-g610-firmware rockchip-multimedia-config -y
Установка из бинарных пакетов, проект box64-debs и box86-debs
Проекты
GitHub ryanfortner/box64-debs и
GitHub ryanfortner/box86-debs.
Бинарные пакеты компилируются и для Raspberry Pi.
Установка Box64 для rk3588:
sudo wget https://ryanfortner.github.io/box64-debs/box64.list -O /etc/apt/sources.list.d/box64.list
wget -qO- https://ryanfortner.github.io/box64-debs/KEY.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/box64-debs-archive-keyring.gpg
sudo apt update && sudo apt install box64-rk3588 -y
Установка Box86 для rk3588:
sudo dpkg --add-architecture armhf
sudo wget https://ryanfortner.github.io/box86-debs/box86.list -O /etc/apt/sources.list.d/box86.list
wget -qO- https://ryanfortner.github.io/box86-debs/KEY.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/box86-debs-archive-keyring.gpg
sudo apt update && sudo apt install box86-rk3588:armhf -y
По итогу установки необходимо перезапустим компьютер:
sudo reboot
Если устанавливать Box86/Box64 из исходного текста, то в каталоге
~/box86 будет скрипт
install_steam.sh для установки Steam. Но этот скрипт выполняется только для версии Ubuntu 22.04 LTS Desktop with Linux 5.10. Установка на Ubuntu версиии выше приводит к проблеме неразрешенных зависимостей некоторых пакетов. Как установить Steam на версию Ubuntu 22.04 рассказано в посте
Installing Steam on the Orange Pi 5 with Armbian.
Тестирование Box86 на примере установки TeamSpeak server
TeamSpeak — программное обеспечение позволяющие создавать собственные серверы для голосового общения в локальной сети и сети Интернет на базе технологии VoIP. В России особенно актуально в связи с
блокировкой Discord.
Сборки сервера TeamSpeak существуют только под архитектуру x86 для Windows и Linux.
Загрузим сервер TeamSpeak и распакуем в домашний каталог:
wget https://files.teamspeak-services.com/releases/server/3.13.7/teamspeak3-server_linux_x86-3.13.7.tar.bz2
tar -xvpf teamspeak3-server_linux_x86-3.13.7.tar.bz2
Теперь войдем в каталог
teamspeak3-server_linux_x86 для принятия лицензии путем создания файла с названием
.ts3server_license_accepted:
cd teamspeak3-server_linux_x86
touch .ts3server_license_accepted
На этом установка сервера TeamSpeak закончена. Проект Box86 замечателен тем, что для запуска x86 приложений на ARM хосте не требуется указывать никакие дополнительные команды. Запуск сервера TeamSpeak:
./ts3server
Сервер запущен.
Запуск сервера TeamSpeak на ARM используя Box86
❯ Pi-Apps — каталог приложений
Для установки различных приложений на одноплатные компьютеры, типа Raspberry Pi, существует замечательный каталог приложений Pi-Apps, позволяющий в два клика установить любое ПО.
Pi-Apps — каталог готовых скриптов для установки разного ПО на Raspberry Pi. В каталоге более 200 приложений. Поддерживаются системы:
- Raspberry Pi (2/3/Zero 2 W/4/5);
- Nintendo Switch;
- Nvidia Jetson;
- Apple Silicon Macs;
- Pine64, Orange Pi, Radxa, Banana Pi, Khadas, Inovato, Libre Computer, и другие ARMv7/ARMv8/ARMv9 устройства.
Установка Pi-Apps:
wget -qO- https://raw.githubusercontent.com/Botspot/pi-apps/master/install | bash
Каталог приложений Pi-Apps
Например, установим игру Pac-Man, пункт
Games > Pac-Man.
Игра Pac-Man
❯ Steam Launcher
Из каталога
Pi-Apps можно установить
Steam Launcher, который заработает и в версии Ubuntu 24.04. Установим Steam из каталога приложений Pi-Apps, раздел
Games.
Приложение Steam
Steam работает, единственное просмотр видео в полноэкраном виде приводит к артефактам. Нативные Linux игры на OpenGL такие как Half-Life 2 работают без проблем, у других в режиме запуска через Proton не все так хорошо.
Видеоядро Mali-G610 MC4 поддерживает OpenGL ES 1.1, 2.0 и 3.2, OpenCL 2.2, Vulkan 1.2, поэтому игры на Microsoft DirectX работать не будут. Со списком игры поддерживающие OpenGL можете ознакомиться по ссылке
List of OpenGL games.
Из списка игр
Compatibility list – Box86/Box64 с запуском через Proton отмечен Dishonored 2, только используется не встроенное графическое ядро в ARM процессор, а видеокарта Radeon RX550.
Из моей коллекции игр полноценно заработали следующие игры:
- Half-Life 2 (Linux)
- Left 4 Dead 2 (Linux)
- Hue (Linux)
- Portal (Linux)
- Portal 2 (Linux)
- SOMA (Linux)
- Hitman Codename 47 (Windows)
- Hitman 2 Silent Assassin (Windows)
- Hitman Contracts (Windows)
Half Life 2 на ARM процессоре Rockchip RK3588 (исходное качество)
Left 4 Dead 2 на ARM процессоре Rockchip RK3588 (исходное качество)
Геймпад
Xbox One последней ревизии 4 (Model 1914) распознался, тест управления успешно прошел, подключался по Bluetooth. Так же должны работать старые геймпады, например Xbox 360, но это неточно. Если возникнуть проблемы с подключением можете воспользоваться инструкцией по установке
Setting up Xbox Controllers on the Raspberry Pi.
06 ноября 2024 года Steam выпустило обновление, после которого Steam клиент перестал запускаться.
То самое обновление Steam
Проблема возникла в библиотеке
libcurl.so. Дело в том, что Steam клиент для Linux x86 включает в себя библиотеку libcurl.so и некоторые другие. Наличие этих же системных библиотек никак не влияет на работу Steam. Но для ARM64 используются системные библиотеки, это можно увидеть из скриншота,
Using native(wrapped) libdl.so.2. И видимо что-то пошло не так.
Ошибка запуска Steam
Но проблему быстро пофиксили и новое обновление Steam клиента от 12 ноября 2024 года заработало, теперь можете запускать игры из Steam на своем одноплатнике, желательно уровня не ниже Raspberry Pi 5.
Видео запуска Linux игр через Steam клиент на Orange PI 5 Plus:
Видео запуска Windows игр через Steam клиент на Orange PI 5 Plus:
Хорошие новости для ARM64
Не так давно
прозвучала новость, что у Valve есть планы по поддержке ARM64 и Android на Linux. В SteamDB обнаружили неизвестное приложение «ValveTestApp3043620» которое тестируется на ARM64 с Proton. Если прокрутить список вниз, то open-source эмулятор названый FEX «позволяет запускать бинарные исполняемые файлы x86 и x86-64 на хосте AArch64». В нем также упоминается Waydroid, open-source система позволяющая запускать приложения и игры Android на Linux-based системах. Ждем официальных новостей от Steam.
❯ PlayOnLinux — запуск Windows x86 приложений
Проект
PlayOnLinux предназначен для простого запуска Windows x86 приложений на базе эмулятора
Wine в Linux. Каталог PlayOnLinux содержит множество различных приложений, включает даже MS Internet Explorer 8.0. Вы можете установить приложение из каталога, так и самостоятельно любое другое.
Установка PlayOnLinux:
sudo apt install python3-pyasyncore winbind smbclient
wget -q "http://deb.playonlinux.com/public.gpg" -O- | sudo apt-key add -
sudo wget http://deb.playonlinux.com/playonlinux_bionic.list -O /etc/apt/sources.list.d/playonlinux.list
sudo apt-get update
sudo apt-get install playonlinux
Проект
GitHub PlayOnLinux/POL-POM-4.
Приложение запускается в Wine окружение с привычными Windows каталогами, такими как
Program Files,
ProgramData,
users,
Windows. По умолчанию корневой каталог Linux монтируется как диск
z:\.
Запуск Total Commander 6.54a на ARM
PlayOnLinux максимально дружелюбен и удобен тем, что не требует разбираться в установке окружения Wine и сопутствующих пакетов. Например, при создание окружения запуска любого
.exe приложения, пользователь выбирает версию Wine и может отметить необходимые библиотеки для установки, например MFC или Microsoft .NET Framework 4.6.1.
Выбор версии Wine и библиотек необходимых для запуска .exe приложения
Программы Microsoft Office и Visio не устанавливались т.к. тематика работы PlayOnLinux и Wine на ARM64 достаточно обширная и требует написание отдельного поста. Если вам интересно почитать, как запустить Microsoft Office и Visio в Linux на ARM процессоре, то подписывайтесь на
блог Timeweb Cloud.
❯ Камера и Telegram
Веб-камера заработала из коробки, системное приложение Camera.
Приложение Camera
Telegram устанавливается из репозитория Snap. Установка:
sudo apt update && sudo apt install snapd
sudo snap install telegram-desktop
Звонки, видео, все работает без нареканий.
Telegram на ARM
❯ Удаленный доступ по протоколу RDP (Remote Desktop Protocol)
В оболочку GNOME интегрирован модуль удаленного доступа, работающий по протоколу
RDP (Remote Desktop Protocol) который используется для Windows систем. Протокол RDP позволяет переносить файлы, перенаправлять вывод звука, задействовать локальные печатающие устройства и т.д. В этой версии образа, RDP работает отлично, даже позволяет смотреть видео YouTube, только с небольшим задержками.
Из всех функций RDP доступны следующие:
- Перенаправление вывода звука;
- Общий буфер обмена. Позволяет переносить текст, изображения и файлы.
Дополнительно, что-то устанавливать для работы удаленного доступа GNOME Remote Desktop (он же g-r-d), не требуется.
Управлять настройками удаленного рабочего стола можно с помощью консоли настройки ОС Ubuntu
Settings или инструмента
grdctl в командной строке. Для включения необходимо перейти в настройки по пути
System > Remote Desktop.
В открывшемся окне доступно два режима удаленного доступа
Desktop Sharing и
Remote Login.
- Remote Login подразумевает вход, как это работает в классической Windows, при подключение предоставляется список пользователей, который можно использовать для удаленного доступа;
- Desktop Sharing предоставляет доступ к текущей графической сессии, которая задействует видеовыход по умолчанию, в большинстве случаев это HDMI. Соответственно, для использования этого режим обязательно должно быть подключено устройство видеовывода, например HDMI монитор или HDMI-адаптер заглушка имитации работы монитора.
Наиболее удобным является вариант
Remote Login с выбором пользователей. На странице настроек
Remote Login необходимо указать
порт подключения (по умолчанию 3389), логин и пароль для подключения к первоначальному экрану выбора учетной записи для входа.
Удаленное подключение по RDP к Ubuntu
В сеансе RDP выключать и перезагружать компьютер следует из командной строки, не используя графический интерфейс GNOME.
❯ LibreOffice — работа с документами
В образ по умолчанию добавлен LibreOffice. Все работает без лагов.
LibreOffice Writer
❯ Visual Studio Code
Среду разработки VSCode устанавливаем по инструкции
Running Visual Studio Code on Linux. Запустим тестовое приложение на .NET, все ОК.
Запуск .NET приложения на ARM
❯ Тесты производительности
Sysbench
Sysbench — это популярный инструмент для тестирования производительности. Полная команда теста выглядит следующим образом:
sudo apt install sysbench
sysbench cpu --cpu-max-prime=20000 --threads=6 --time=0 --events=10000 run
Где threads – это количество ядер процессора, а events – это количество выполняемых задач.
По результату теста получается, что за 2.19 секунды выполнено 10000 задач, 4566.21 задачи в секунду.
Для сравнения, плата Raspberry Pi 5 выполнила такое же количество задач за 2.43 секунды, это 4115.23 задачи в секунду, что на ~10% медленнее, чем Orange PI 5 Plus.
Скорость работы SSD диска
Для тестирования SSD диска воспользуемся программой
KDiskMark, проект на
GitHub JonMagon/KDiskMark.
Для установки выполнить команду:
sudo apt update && sudo apt install kdiskmark
Если в репозитории отсутствует пакет
kdiskmark, то тогда необходимо добавить репозиторий следующей командой, затем установить пакет:
sudo add-apt-repository ppa:jonmagon/kdiskmark
sudo apt update && sudo apt install kdiskmark
Выполним тест скорости:
Тестирование скорости работы SSD диска Fanxiang S500 Pro PCIe 3.0x4 M.2 NVMe на 512 ГБ утилитой KDiskMark, слева профиль NVMe SSD, справа профиль Standart Preset
Для отображения информации о характеристиках SSD диска запустим утилиту
QDiskinfo.
Установка:
sudo add-apt-repository ppa:ubuntuhandbook1/qdiskinfo
sudo apt update && sudo apt install qdiskinfo
Утилита QDiskinfo
Для получения системной информации о SSD диске и температуры можно воспользоваться консольной утилитой
smartctl.
Установка smartctl, отображение температуры SSD диска
Установка утилиты smartctl:
sudo apt update && sudo apt-get install smartmontools
Отображение температуры:
anton@opi5plus:~$ sudo smartctl -a /dev/nvme0 | grep "Temperature:"
Temperature: 45 Celsius
Отличные показатели скорости SSD диска и наличие двух Ethernet портов позволят из Orange PI 5 Plus сделать сетевой сервер NAS. Например, на этом же процессоре построен NAS-сервер
FriendlyELEC CM3588 NAS Kit с 4-ми слотами M.2 M-Key PCIe 3.0 x1 для установки дисков NVMe SSD. Обзор решения по ссылке —
The FriendlyELEC CM3588 NVMe NAS Kit — Tao of Mac.
Для выбора SSD диска может помочь сайт
pibenchmarks.com с данными тестирования на одноплатных компьютерах, таких как
Orange PI 5 Plus.
❯ Энергопотребление
Замер энергопотребления проводился с включенными адаптерами USB Comfast CF-812AC и WIFI+BT5.0 RTL8723BU.
SSD диск Fanxiang S500 Pro PCIe 3.0x4 M.2 NVMe потребляет до 6.6 Вт. В ходе стресс теста
s-tui была достигнута максимальная температура
CPU 58.2 °C, GPU 53.6 °C, что говорит об эффективном охлаждении. Если использовать плату в качестве NAS сервера без нагрузки видеоядра, то можно обойтись и обычным радиатором без вентилятора. Кулер включается практически только при двух задачах, это воспроизведение видео и обновление пакетов.
При полной загрузке всех ядер процессора потребляемая пиковая мощность не превышала 12.6 Вт, таким образом, с запасом достаточно блока питания на 5V/3A, что практически соответствует требованиям в 5V/4A.
На видео вы можете посмотреть, как все работает на Orange PI 5 Plus в Ubuntu 24.04 LTS:
❯ Итог
Первым моим одноплатным компьютером на ARM процессоре был
Cubieboard A10, выпущенный в конце 2012 года. Производительность ARM процессоров существенно возросла за эти годы и одноплатники обзавелись «взрослым» обвесом в виде PCIe, NVMe, нескольких HDMI интерфейсов, и т.д. Как устройство Orange PI 5 Plus очень впечатлило работой из «коробки». Мы все привыкли, что если используешь Windows, то все работает без проблем и не требуется что-то компилировать, собирать и т.д. Linux до сегодняшнего дня проделал большую работу и стал гораздо дружелюбнее непосвящённому пользователю. Можно даже запускать приложения Windows x86 на ARM процессоре, без каких либо сложностей.
Итоговый вердикт:
Да, Orange PI 5 Plus способен заменить домашний/офисный ПК, но не все так однозначно.
Рассмотрим целесообразность использование решений на ARM процессоре вместо x86 в качестве домашних/офисных/серверных систем на сегодня. Отправной точкой сравнения данных систем является стоимость. При сопоставимой стоимости одноплатный компьютер
Radxa X4 на базе x86 процессора Intel N100, в ключевом приложение
браузер показал более чем, в два раза лучшую производительность, за счет наличия оптимизации. Все что связано с использованием графического процессора, первенство остается за
Radxa X4.
В
тестах Intel указывает, что процессор
Intel N100 показывает до 260% более высокую производительность в браузере Google Chrome по сравнению с процессором
Qualcomm Snapdragon 7c+ Gen 3, при том, что разница производительности для Microsoft Office составляет в 51%. Компания Qualcomm процессор
Snapdragon 7c+ Gen 3 позиционирует как платформу для ноутбуков начального уровня. На cpubenchmark.net:
- Qualcomm процессор Snapdragon 7c+ набирает 6028 попугаев в многопоточном режиме, и 1719 попугаев в однопоточном режиме;
- Intel N100 набирает 5504 попугаев в многопоточном режиме, и 1943 попугаев в однопоточном режиме.
Разница в производительности процессора составляет ~10% в пользу Qualcomm Snapdragon 7c+ Gen 3, но
веб-браузер на Intel N100 работает в 2.6 раза быстрее.
А как на счет энергопотребления и тепловыделения, ведь у ARM дела лучше, чем x86? Сравним результаты с данными из
источника:
* скрипт sbc-bench.sh запускает комплексный бенчмарк от Thomas Kaiser, проект GitHub
ThomasKaiser/sbc-bench.
Запуск sbc-bench.sh
wget https://raw.githubusercontent.com/ThomasKaiser/sbc-bench/master/sbc-bench.sh
chmod +x sbc-bench.sh
sudo ./sbc-bench.sh -r
Из таблицы следует, что принципиальной разницы в энергопотреблении между
Radxa X4 и
Orange PI 5 Plus нет, как и в производительности системы, но как говорится, есть нюанс.
К
Orange PI 5 Plus был подключен SSD диск c потреблением до 6.6 Вт и USB донглы, а к
Radxa X4 был подключен SSD диск емкостью 128 ГБ c потреблением до 4.86 Вт. По умолчанию у
Radxa X4 выставлен лимит (Power Limit 1) в BIOS на потребление процессора до 6 Вт (значение, 6000). Значения для
Radxa X4 в таблице выше получены при выставленом лимите PL1. В документации к
Radxa X4 рекомендуется блок питания мощность не менее 18 Вт без устройств потребляющих электроэнергию, или 25 Вт при полной нагрузке на порты USB. Многие владельцы плат аналогичные
Radxa X4 отмечают резкое возрастание энергопотребления и тепловыделения процессора при снятие лимита на питание. В итоге штатный куллер уже не справляется с охлаждением, и некоторые крепят что-то подобное.
Кулер на Radxa X4, левое фото источник x.com @conoro, правое фото источник Radxa Community
Проблема охлаждения Intel N100 на плате
Radxa X4 приводит к невозможности размещения на одной стороне системы охлаждения и портов подключения. В отличие от традиционых плат на ARM, на
Radxa X4 процессор и контакты GPIO размещены по разные стороны. В результате, для обеспечения нормального охлаждения, плату приходится переворачивать и контакты
GPIO находятся в перевернутом состояние. По заверениям некоторых пользователей, все же штатная система охлаждения на
Radxa X4 не справляется со своей задачей даже при выставленном лимите PL1.
Для всех мини-ПК построенных на
Intel Processor Alder Lake-N N100, требуется блок питания не меньше DC12V/2A, а это уже
24 Вт, против 20 Вт у
Orange PI 5 Plus.
Рассмотрим мини-ПК Beelink Mini S12 Pro на процессоре Intel N100 в комплектации 16 GB RAM и 500 GB SSD диска
Мини-ПК Beelink Mini S12 Pro
Система охлаждения Мини-ПК Beelink Mini S12 Pro, источник YouTube @Smart_Life
Как видно на фотографии выше, система охлаждения более серьезная и TDP составляет 25 Вт. Mini S12 Pro во время простоя потребляет 7.7 Вт, а при полной загрузке процессора 23.8 Вт, по данным
xdaforums.com.
Единственное, у всех мини-ПК на процессоре Intel N100 на диск NVMe SSD выделено всего 1-2 линий PCIe, в отличие от Orange PI 5 Plus с 4x линиями.
Работу процессоров Intel можно кратко сформулировать в фразе: «Либо все, либо ничего». Хотите высокую производительность? Берите более мощный блок питания и радиатор побольше.
После такого неудивительно, что в вашем телефоне не используется процессор на архитектуре x86 от Intel. Intel в рамках архитектуры x86 не смогла реализовать достаточное низкое энергопотребление при малой нагрузке вычислительных задач, как это сделано в ARM процессорах с энергоэффективными ядрами.
Мини-ПК
Beelink Mini S12 Pro продается 193 USD. Стоимость Orange PI 5 Plus с 16 ГБ составляет 144 USD. Если добавить все необходимую обвязку к Orange PI 5 Plus с 16 ГБ, то получим стоимость в 215 USD.
По итогу эквивалентное решение по производительности системы на ARM архитектуре даже получается дороже x86.
Компоновка и периферия
Преимущество архитектуры ARM раскрывается в гибком расширение процессора, можно добавить NPU как это сделано в Rockchip RK3588 или RAM память в Rockchip RV1106. ARM это универсальная архитектура позволяющая разрабатывать процессоры от ниш носимой электроники до серверных высокопроизводительных систем.
Например, вы можете запустить полноценную операционную систему Linux на плате
Luckfox Pico Max RV1106.
Luckfox Pico Max RV1106
Данная плата построена на процессоре Rockchip RV1106, ядро ARM Cortex-A7, в который интегрирована RAM память объемом 256MB, NPU производительностью в 1TOPS и еще можно подключить камеру. Размер платы сопоставим с большой USB флешкой. Процессоры x86 требуют несоразмерно большей «обвязки» чем ARM. Intel процессоров на архитектуре x86 в природе не существует для подобных сфер использования.
Внимательно посмотрите на внешний вид плат
Radxa X4 и
Orange PI 5 Plus:
Внешний вид Radxa X4 и Orange PI 5 Plus, масштаб соблюден
Заметили существенно более сложную «обвязку» у
Radxa X4? Это при том, что на
Radxa X4 только один разъем HDMI, один разъем Ethernet, один разъем PCIe и максимальное поддерживаемое разрешение составляет 4K@60FPS, против 8K@60FPS у
Orange PI 5 Plus, а еще в Rockchip RK3588 интегрирован NPU.
Ради справедливости необходимо отметить техпроцессы изготовления, у Intel N100 это 10 нм техпроцесс компании SuperFin (не путать, в самой Intel называется Intel 7), Rockchip RK3588 это 8 нм.
Еще один подвох одноплатных компьютеров на x86 процессорах заключается в управление GPIO, I2C, SPI. GPIO в процессорах Intel предназначен для подключения периферийных устройств и недоступен из пользовательского режима работы операционный системы, как это работает на платах с ARM процессором. GPIO в процессорах Intel работает на логическом напряжение в 1.8V и даже ниже. В некоторых новых процессорах логика уже работает на 1.2V или 0.8V. Подключить напрямую датчик с напряжение в 3.3V как это делается на Raspberry Pi уже не получится.
Но тогда возникает вопрос, как тогда реализован 40-контактный GPIO разъем как у Raspberry Pi? Все просто, на плате
Radxa X4 распаян чип микроконтроллера RP2040, который используется в плате
Raspberry Pi Pico RP2040.
Плата Raspberry Pi Pico RP2040
Кнопка BOOTSEL тоже выведена, как на Raspberry Pi Pico.
GPIO и чип МК RP2040 на Radxa X4
Процессор Intel N100 и микроконтроллер RP2040 взаимодействуют друг с другом через интерфейсы USB и UART.
Для управления контактами GPIO необходимо использовать
Pico SDK. По сути, если подключить к обычному x86 компьютеру Raspberry Pi Pico RP2040, то получится тоже самое. Из-за подобной схемы работы, невозможно подключить к компьютеру, например LCD на SPI интерфейсе в качестве основного монитора, как это сделано в
Подключаем дисплей SPI LCD ILI9341 к одноплатному компьютеру Banana Pi BPI-M64 или любому другому на ОС Armbian.
Но некоторые производители одноплатных компьютеров на x86 идут дальше и реализуют работу с GPIO через FPGA процессор, как это реализовано у
AAEON UP 7000.
Блок диаграмма UP-7000
В качестве FPGA процессора используется ПЛИС Altera Max V 5M160ZM100C5N, на которой запрограммировано GPIO, SPI, I2C, I2S, ADC, PWM, UART.
В этом случае работа с GPIO возможна как в Raspberry Pi, только вот энергопотребление (TDP) составляет от 30 до 35 Вт, рекомендуется блок питания на 12V@5A, т.е. на 60 Вт.
ИМХО
Radxa X4 бессмысленная и бесполезная плата. Если использовать ее как высокопроизводительную платформу, то возникает проблема с отводом тепла и мало интерфейсов для подключения периферийных устройств. Лучше взять полноценный мини-ПК построенный на материнской плате форм фактора Mini-ITX или Nano-ITX c хорошим охлаждением. Если основное назначение это управление GPIO, например сфера робототехники, то лучше использовать Raspberry Pi, где блок GPIO интегрирован в процессор ARM.
Перспективы
Способны ли системы на ARM процессорах заменить домашний/офисный ПК в будущем, добиться функциональности текущих x86 систем? Ответ:
Да.
Основная проблема замещения x86 систем, это отсутствие оптимизации ПО для повседневных задач под архитектуру ARM. Если тест графики WebGL Aquarium на x86 системах работал всегда как часы, то вот на ARM иногда возникали артефакты и приходилось перезапускать браузер, не все на 100% работает (исправлено в последней сборке Joshua Riek).
Но сообщество активно пилит драйвера и ПО. Если сейчас ARM дышит в спину x86, то в обозримом будущем ARM может спокойно сдвинуть с первого места x86 системы начального и среднего уровня.
Архитектуре x86 останется только сегмент высокопроизводительных систем, например мощные игровые компьютеры, сервера, у x86 процессоров производительность на ядро существенно выше, чем у ARM.
Необходимо добавить еще один важный аспект, это желание снизить техническую зависимость от одного вендора. Архитектуры ARM и RISC-V дают возможность, хоть самостоятельно разрабатывать свой процессор. Успешный кейс компании Apple лишнее доказательство этого. В отличие от процессоров x86, архитектура ARM позволяет без проблем добавлять новые вычислительные блоки в процессор, например NPU. Вы можете создать специализированный процессор «заточенный» под ваши нужды.
Windows on ARM
Возможно, вы слышали что-то про Windows RT, а еще были смартфоны от NOKIA на Windows Phone, последний из могикан совместное детище, аппарат Microsoft Lumia 950 XL. Заметили, что у Windows есть проблемы с работой на ARM платформе? А еще в этом году Microsoft
показала ноутбук Surface на базе ARM-процессора Qualcomm Snapdragon X Elite/Plus.
Microsoft Surface
Обычно, когда компания выводит на рынок новый продукт, то она для разработчиков выпускает «Developer Kit», предназначенный заранее подготовить ПО для новой платформы еще до выпуска основного продукта. Так в 2020 году компания Apple выпустила «Developer Transition Kit», призваный помочь разработчикам начать работу с процессорами SoC Apple A12Z Bionic, которые использовались в iPad Pro 4-го поколения.
A12Z-based Developer Transition Kit (DTK) Mac Mini, источник @dosdude1
Компания Qualcomm в свете выхода процессора Snapdragon X Elite презентовала мини-ПК
Snapdragon Dev Kit for Windows работающий на Windows 11.
Snapdragon Dev Kit for Windows
Не успев толком начать продавать ноутбуки на ARM процессоре, компания Qualcomm в конце ноября 2024 года отменила выпуск Snapdragon Dev Kit и возвращает всем разработчикам деньги оформившие заказ. В
письме покупателю, компания
Qualcomm сообщает о прекращение выпуска продукта и приостановке его поддержки на неопределенный срок из-за "… продукт Developer Kit в целом не соответствует нашим обычным стандартам качества, ...".
Первые ноутбуки на процессоре Snapdragon X Plus и Snapdragon X Elite продавались по цене от $1000 и выше. Для сегмента ноутбуков средней производительности это весьма дорого, даже для рынка США. Скорее всего Qualcomm поняв бесперспективность идеи сменила стратегию.
Так
Qualcomm на Дне инвестора в ноябре 2024 года заявила, что планирует выпустить новый чип Snapdragon X, который будет ориентирован на ПК с Windows начального уровня стоимостью около 600 долларов. В целом, план Qualcomm состоит в том, чтобы иметь полную линейку чипов, ориентированных на каждый сегмент рынка ПК.
Слайд презентации Qualcomm на Дне инвестора в ноябре 2024
К 2026 году процессоры Qualcomm смогут охватить 70% рынка ноутбуков с Windows, ожидается более 100 различных моделей ноутбуков, а к 2029 году около 50–70 % новых ноутбуков будут non-x86 системами с ИИ (с трудом верится, если 5-10% это уже будет фантастика).
Слайд презентации Qualcomm на Дне инвестора в ноябре 2024
Ожидается, что новоый предстоящий процессор 3-го поколения Oryon, который будет в чипсете Snapdragon X Elite Gen 2, обеспечит скачок производительности и эффективности на целое поколение. Qualcomm собирается анонсировать Snapdragon X Elite Gen 2 в конце 2025 года, а ПК на базе Windows с данным чипом поступят в продажу в последующие месяцы. Опять у Microsoft с ПК Windows на ARM как-то не задалось, новые ноутбуки Qualcomm на ARM процессорах мы увидим не ранее начала 2026 года.
Еще показали большой слайд, где заявили что приложения занимающие ~90% вашего рабочего времени на ПК нативно работают на процессоре Qualcomm, только вот про производительность ничего не сказали.
Слайд презентации Qualcomm на Дне инвестора в ноябре 2024
Вообще виденью Qualcomm на будущее развитие ARM систем можно посвятить отдельный пост, там много чего интересного ожидается, практически три часа прямой трансляции.
Ноутбук на RK3588
Компания Cool Pi/Open SBC/Shenzhen Tianmao Technology (три названия одной компании) представила на краудфандинговой платформе модульный, расширяемый, открытый ARM ноутбук
GenBook RK3588 с 32 ГБ RAM памяти.
Ноутбук GenBook RK3588
В ноутбуке можно легко заменить беспроводной модуль, заменить SSD-накопитель M.2 MVMe, обновить SoM до более мощного и даже заменить дисплей.
Материнская плата ноутбука GenBook RK3588
Компания предоставит образы Debian 11, Ubuntu 20.04/22.04/24.04, Armbian, Android 14, UOS, KylinOS и Alt-Linux для ноутбука. Помимо этого, так же предоставят документацию на Wiki, включая схемы OrCAD и PDF для материнской платы, схемы PDF для SoM и образы ОС.
Ноутбук предназначен для энтузиастов и разработчиков, призванных попытаться раскрыть потенциал ARM-систем для пользовательских устройств.
Пишите в комментарии, какие темы вам интересны в контексте платы Orange PI 5 Plus и ARM-устройств.
❯ Ресурсы
Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале ↩