Производительность 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
- Процессор Rockchip RK3588 vs RK3588S
- Операционные системы
- Аппаратная конфигурация
- Смета
- Запись образа ОС и первый запуск
- Системная информация
- Работа устройств
- Веб-браузер Chromium и Firefox
- Транслятор Box86/Box64 — исполнение x86/amd64 приложений
- Pi-Apps — каталог приложений
- Steam Launcher
- PlayOnLinux — запуск Windows x86 приложений
- Камера и Telegram
- Удаленный доступ по протоколу RDP (Remote Desktop Protocol)
- LibreOffice — работа с документами
- Visual Studio Code
- Тесты производительности
- Энергопотребление
- Итог
- Ресурсы
- Литература
❯ Обзор 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 |
USB | 2x USB3.1 + 2x USB2.0 OTG (два порта полностью функциональные Type-C) | 1x USB3.1 + 1x USB2.0 OTG (один порт полностью функциональный Type-C) |
DISPLAY | 2x HDMI2.1 TX/eDP1.4 | 1x HDMI2.1 TX /eDP1.4 |
PCIe | 4x1 Lane PCIE3.0 | 2x1 Lane PCIE2.1 |
В попугаях производительность процессоров 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, и им подобные не поддерживаются.
№ | Позиция | Цена, $ |
1. | Orange PI 5 Plus с 32 ГБ RK3588 | 189.00 |
2. | USB Wi-Fi Comfast 1300Mbps CF-812AC RTL8812BU | 5.59 |
3. | USB Bluetooth WIFI+BT5.0 RTL8723BU | 2.54 |
4. | Кулер ШИМ (PWM) на 5В | 4.40 |
5. | Fanxiang S500 Pro M.2 SSD 512GB | 33.32 |
6. | Металлический корпус от 52Pi | 13.88 |
7. | Блок питания 5V в 4A | 12.05 |
Итого: | 260.78 |
Стоимость комплекта составила ~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
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 видеоадаптер отображается корректно.
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 интерфейсу.
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:
№ | Плата | Speedometer 2.0, runs/min |
WebGL Aquarium, 15000 fish |
1. | Orange PI 5 Plus | 66.6 (Chromium), 72.00 (Firefox) | 13 FPS, 60 FPS (1000 fish, Chromium) |
2. | Raspberry Pi 5 | 56 (Firefox) | 48 FPS (1000 fish, Chromium), 35 FPS (1000 fish, Firefox) |
3. | Radxa X4 | 175 (Chromium), 153 (Firefox) | 32 FPS |
4. | Intel Core i7-3520M | 133 (Chrome) 113 (Firefox) | 24 (Chrome) |
Сравнение процессоров по 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 все видео воспроизводится прекрасно.
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.
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
Бинарные пакеты компилируются и для 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.
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.
Тест | Мощность, Вт |
Ток (5V), A |
В выключеном состояние (Shutdown) | 0 | 0 |
Запуск (Boot) | 9.6 | 1.92 |
Бездействие системы (Idle) | 5 | 1 |
WebGL Aquarium, 15 000 of Fish (WebGL-aqua) | 10.7 | 2.14 |
Полная загрузка, s-tui (Full load) | 12.2 | 2.44 |
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.
wget https://raw.githubusercontent.com/ThomasKaiser/sbc-bench/master/sbc-bench.sh
chmod +x sbc-bench.sh
sudo ./sbc-bench.sh -r
Тест | Radxa X4 |
Raspberry Pi 5 | Orange PI 5 Plus |
SBC-Bench.sh | |||
— memcpy | 8128.3 MB/s | 5158.3 MB/s | 6047.6 MB/s |
— memset | 7960.9 MB/s | 11671.4 MB/s | 21823.7 MB/s |
— 7-zip | 8120 MIPS | 10930 MIPS | 16610 MIPS |
— OpenSSL AES-256 16K | 12.2989227k * 10^5 | 13.6773632k * 10^5 | 12.8424892k * 10^5 |
Speedometer 2.0 (Firefox) | 153 runs/minute | 56.6 runs/minute | 72 runs/minute |
Speedometer 2.0 (Chrome, Chromium) | 175 runs/minute | 63.5 runs/minute | 66.6 runs/minute |
Макс скорость чтения (NVMe SSD) | 1700 MB/s | 855 MB/s | 3139 MB/s |
Потребление энергии | |||
— В выключеном состояние (Shutdown) | 0.2 Вт | 1.7 Вт | 0 Вт |
— Запуск (Boot) | 12 Вт | N/A | 9.6 Вт |
— Бездействие системы (Idle) | 6 Вт | 3.6 Вт |
5 Вт |
— Полная загрузка (Full load) | 12 Вт | 8.8 Вт |
12.2 Вт |
Из таблицы следует, что принципиальной разницы в энергопотреблении между 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-устройств.
❯ Ресурсы
- Orange Pi 5 Plus — Orange Pi
- Images for Orange Pi 5 Plus by Joshua-Riek — GitHub Joshua-Riek/ubuntu-rockchip
- Joshua-Riek_ubuntu — rockchip Wiki
- Orange Pi 5 Plus SBC powered by Rockchip RK3588 — GitHub devdotnetorg/OrangePi5Plus
Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале ↩
- Installing Steam on the Orange Pi 5 with Armbian — James A. Chambers
- Radxa X4 review — An Intel N100 alternative to Raspberry Pi 5 tested with Ubuntu 24.04 — CNX Software
- BIOS Release Notice for RADXA X4 — X Family — Radxa Community
- UP 7000 is a powerful x86 alternative to the Raspberry Pi 4 SBC with an Intel Processor N50_N97_N100 CPU — CNX Software
- Nezha Developer Kit — Intel.com
- Nezha Development Kit powered by Intel Processor N97 Processor (Alder Lake-N) — AAEON
- Nezha (Nezha) information — AAEON AI Forum
- FAQ — LattePanda Documentation
- Radxa X4 SBC Unites Intel N100 and Raspberry Pi RP2040 — Jeff Geerling
- Qualcomm cancels Snapdragon Dev Kit, refunds all orders — Jeff Geerling
- RK3588 vs N100 Mini-ITX Builds (featuring Ubuntu 24.04) — YouTube
- Radxa X4_ An N100 Pi — YouTube
- Qualcomm plans to bring Snapdragon chips to $600 laptops
Комментарии (52)
Rezzet
17.12.2024 08:38"Стоимость комплекта составила ~260 зеленых бумажек"
Собственно и все. Остальное конечно очень интересно, но можно не читать. За эти деньги можно взять мини-пк на Ryzen7 5700U с 32Гб памяти и 1Тб SSD. Все программы будут работать без танцев с бубном из коробки включая Виндовс.
Fox_exe
17.12.2024 08:38Ну или уже упомянутый N100 за 150-200 баксов и он ничем не будет уступать Рокчипу...
PTM
17.12.2024 08:38n100 на алике материнка стоит 12-13тр
Fox_exe
17.12.2024 08:38Тут надо сравнивать именно готовые комплекты.
Orange Pi 5 Plus RK3588 + 16GB Ram + 512GB NVME + Heatsink + WiiFi + Power supply = ~28.000р.
MiniPC N100 + 16GB Ram + 512GB NVME + WiFi + Fanless case + Power supply = ~25.000р.
При этом использование Intel даёт огромное кол-во плюсов, в то время как с Рокчипом только одно "достоинство" - наличие нейроускорителя.
safari2012
17.12.2024 08:38Я бы сюда добавил убогий кулер, как иллюстрацию к мультику "а зачем тебе жужжать, если ты н пчела?". На МиниПК n100 или AMD, совсем другой формфактор и система охлаждения, соответственно.
Areso
17.12.2024 08:38на самом деле у non-X86 SBC есть еще одно преимущество - 40 пиновый хэдер, на который можно вешать кучу перифериных устройств, датчиков, и прочих актуаторов.
Fox_exe
17.12.2024 08:38У x86 тоже есть Gpio, просто выведены они далеко не всех материнках (Но такие материнки есть. Видел на алике плату со старичком Celeron J1900 с raspberry-совместимым разъёмом gpio ("40-пин хедером")
red_dragon
17.12.2024 08:38Для офисного или домашнего ПК, о котором речь, GPIO очень сомнительное преимущество.
Rezzet
17.12.2024 08:38Автор сам делает такой вывод, что система на х86 будет дешевле или быстрее за те же деньги. Мои эксперименты не зашли так далеко как у автора с одноплатниками. Все остановилось на уровне покупки, как только просчитываю итоговую цену компьютера на АРМ одноплатнике прихожу к выводу что купить мини-пк на х86 дешевле и закрываю тему на год, через год делаю то же самое и снова откладываю на год, так уже пять лет.
На мой взгляд массовое АРМ будущее наступит тогда когда телефон можно будет использовать в роли настольного компьютера установив его на док станцию. Самсунг пыталась такое сделать со своим DEX и еще кто-то, но пока не взлетает, и думаю не взлетит без поддержки этого из коробки в Андроид. Гугл к сожалению в эту сторону двигается оооочень медленно. Можно купить планшет с клавиатурой и подключить к нему мышку, будет почти ноутбук, но все равно куча странностей, программы открываются в полноэкранном режиме, часть программ открывается только в телефонном режиме. Если подключить внешний монитор, интерфейс самой ОС выглядит очень нелепо на внешнем мониторе. Короче проблемы не в железе, проблемы в софте. Процессора среднебюджетного планшета на обычные повседневные задачи хватает с головой, веб почитать, виде посмотреть, в мессенджерах пообщаться, в документах поработать, думаю можно было бы даже программировать, на каком-то языке не требующем компиляции, питоне например. Проблема именно в софте. Думаю что производители просто боятся сейчас открыть этот ящик Пандоры. Скольким людям перестанет быть нужен компьютер, если можно поставить телефон на докстанцию и вот тебе компьютер со всеми твоими программами, данными и прочим личным. Непонятно кто первый к этому придет, Апл, Гугл или Хуавей(со своей Harmony OS) но кто-то должен, идея слишком простая.
Vytian
17.12.2024 08:38Это не проблема в софте, это Андроид/iOS в принципе негодные инструменты для полноценного десктопа. Да они и разрабатывались во-многом в противовес десктопу.
Дуалбут нужен из коробки, а на это ни один крупный вендор не пойдет, как по техническим причинам (безопасность, включая кошельки и магазины приложений), так и маркетинговым -- как тогда свиже ноутбуки и компьютеры проодавать.
И на ком вложения в условную убунту под зоопарк девайсов отобъются? А только под одну линейку/модель аппаратов пилить -- ну и отношение у производителя будет соответствующее, как одноразовой имиджевой акции, - проходили не раз.
kenomimi
17.12.2024 08:38Непонятно кто первый к этому придет, Апл, Гугл или Хуавей(со своей Harmony OS) но кто-то должен, идея слишком простая.
Думаю, это дело ближайшего будущего, но не сейчас. Проблема лежит в маркетинге - для выхода такой фичи на рынок надо сделать всё красиво. Это по силам паре-тройке корпораций, и скорее всего, первым будет яблоко...
Майкрософт уже третий раз проваливает винду на армах, пользователи жалуются, что не идет софт - тетя Срака не хочет разбираться, какой там проц, ей надо эксель/сап/1С открывать и в игры играть... Тоже самое и здесь. Если вывести фичу двух ОС на рынок, но кривую, пользователи запомнят ее такой - синдром утёнка никто не отменял. Это испортит последующие продажи всем. Потому проще чуток подождать, пока условный эпл выкатит красивую версию, а потом передрать функционал.
True_Login
17.12.2024 08:38На мой взгляд массовое АРМ будущее наступит тогда когда телефон можно будет использовать в роли настольного компьютера установив его на док станцию.
Была такая штука -- Ubuntu Mobile (вроде так она называлась на выходе). В режиме десктопа через докстанцию превращала мобильный телефон в мини-пк (по задумке). Я тогда решил, что как только увижу в продаже, то сразу же куплю.
Не помню, был ли официальный аппарат, но помню, что можно было ставить эту ос на пиксели. Вот я посмотрел обзоры, список проблем и т.д., и решил подождать еще годик. Но заметного прогресса не было.
Еще я оценил то, как я пользуюсь мобильным телефоном. И для меня мобильный телефон в первую очередь средство связи, а все эти плюшки в виде браузера, камеры и игр только приятный бонус.
Бесспорно, есть люди, которые пользуются DEX'ом и иже с ним. Но может проблема в том, что таких людей очень мало, что не все производители софта хотят даже косо-криво поддерживать этот режим. Думаю, что тем, кто работает с документами, проще купить планшет/ультрабук.
Vytian
17.12.2024 08:38Оставив в стороне вопрос цены (хотя на 100% согласен с оратором выше - за 250 у.е. сабж не нужен), Вы уверены, что 5V 4A вам хватит на нормальную ваботу. Вот давайте представим сченарий копирования данных с флэши по usb 3.1/3.2 на NVMe. Да там запрсто только на эти два устройства 10 ватт в пике будет. и что 32 Г памяти не отъест еще ватт 5 не верю.
Ну и скорость конечно....
devzona Автор
17.12.2024 08:38SSD может максимум потребить в пике DC 3.3/2.0A = 6.6 W. Подключал USB Flash 3.0 на 128 ГБ. Архивировал игры steam с SSD на USB Flash, никаких проблем не заметил. USB Flash на само деле много не потребляет, хотя корпус греется прилично.
Dynasaur
17.12.2024 08:38а ещё разъём M.2 M-Key NVME 4xPCIe годится для подключения нейросетевого акселератора типа Hailo
ginkage
17.12.2024 08:38Учитывая то, что автор не разобрался, как включить аппаратное ускорение графики (для этого есть аж два разных драйвера), все тесты производительности в статье бессмысленны.
devzona Автор
17.12.2024 08:38Чё серьезно? Если вы разобрались в "как включить аппаратное ускорение графики", то просветите тогда общественность.
Второе, вы видимо вообще не понимаете как работают системы без аппаратного ускорения графики. Тот же тест с рыбками на WebGL дал бы максимум ~5 fps с одной рыбкой. Видео 1080p кодеком H265 вообще максимум 1-2 fps. А игры в Steam? Неа, это тоже на одном процессоре? Вы это серьезно или шутите?
Если откроете страницу автора сборки https://github.com/Joshua-Riek/ubuntu-rockchip/, то там черному по белому написано "3D hardware acceleration support via panfork".
В посте написано "3D аппаратное ускорение работает посредством драйвера panfork".
Пролистайте до скриншота Системная информация GNOME.
Там есть две строки:
Graphics 1 - Software Rendering
Graphics 2 - Mali-G610 (Panfrost)
Я думаю вывод сделать не сложно, есть аппаратное ускорение графики или нет.
ginkage
17.12.2024 08:38Я серьёзно. Дайте скриншот с glmark2-es-wayland, например? А ещё лучше, с vkcube-wayland?
Panfork — это древний форк Mesa, едва ли пригодный для чего либо. Правильно использовать либо Panthor (если вы любите опенсорс), либо libmali (если хотите максимальную производительность, раза в 2-3 быстрее). Оба умеют рендерить GNOME аппаратно, без вот этого "Software Rendering".
Да, я разобрался, как включить аппаратное ускорение. Я разобрался, как включить Vulkan. Этими моими наработками активно пользуется, например, проект ROCKNIX.
Видео в H265 — это вообще другое, там другие драйверы и другие ядра процессора.
devzona Автор
17.12.2024 08:38Скриншоты я всегда могу опубликовать и я знаю, что там будет написано.
Читаем: glmark2-es2-wayland - OpenGL (ES) 2.0 benchmark suite
Мне хотелось бы узнать, как все же включить это "аппаратное ускорение графики", раз вы так в этом хорошо разбираетесь.
Второе, мне непонятно одно, как тогда выполнился тест WebGL Aquarium с рыбками.
mozilla.org сообщает: " WebGL (Web Graphics Library) ... WebGL приносит в веб трёхмерную графику, вводя API, который построен на основе OpenGL ES 2.0"
Запуск рыбок на WebGL - следует, что работает OpenGL ES 2.0.
Тест glmark2-es2-wayland проверяет наличие доступности и работы OpenGL (ES) 2.0.
Раз тест с WebGL выполнился, значит OpenGL ES 2.0 работает.
Вот теперь, как специалист, поясните мне как заработало API OpenGL ES 2.0 без аппаратного ускорения?
Ссылку нормальную напишите на свой проект "проект ROCKNIX".
ginkage
17.12.2024 08:38Мой вопрос про скриншот glmark2-es2-wayland имеет совершенно конкретную причину: если у вас в тесте terrain результат около 100 или ниже, то это ничто. Если 300 или выше, то — поздравляю, вы наконец-то используете ускоритель Mali G610 (и, собственно, процессор RK3588) по назначению. Но я уже знаю, каким будет ваш ответ. Отсюда, например, бессмысленность утверждения о преимуществе N100 в 2.6 раза.
А включить-то просто: поставьте Armbian последних сборок с Noble, плюс установите libmali (можно сборки tsukumijima, но если хочется на практике использовать Vulkan, то лучше мои). Вас, возможно, удивит, но я — один из мэйнтейнеров Armbian, именно для этого процессора.
Проект ROCKNIX — вот тут: https://rocknix.org/ (неужели вас уже и в гугле забанили?)
devzona Автор
17.12.2024 08:38Первое, если вы такой опупеный спец, и не врете, то тогда приведите конкретные ссылки на коммиты в проект Armbian и rocknix. Это не ваши собственные личные проекты. И ваш вклад в них непонятен, как и ваша квалификация.
Второе, все тесты и замеры в посте абсолютно корректны. Любой может выполнить их и получить те же результаты.
Третье, прочитайте пост.
Четвертое, если все же прочитали пост, то тогда вы в программном обеспечение разбираетесь как я в балете, т.е. совсем никак.
Плата на процессоре N100 взялась как эквивалент по стоимости и возможностям Orange PI 5 Plus. Собственно тема поста такая, взять решение на ARM и за такую же стоимость попытаться сравнить с x86, сделать это максимально соотносимо.
бессмысленность утверждения о преимуществе N100 в 2.6 раза.
бессмысленно ваше бытие на этой земле. У меня в посте написано "веб-браузер на Intel N100 работает в 2.6 раза быстрее." Это говорит о том, что для рендера данной страницы Хабра, устройству на Intel N100 потребуется приблизительно в 2.6 раза меньше времени, чем Orange PI 5 Plus. И не надо придумывать всякую чушь. Доказательства есть в посте, надеюсь, вы это в состояние понять.
Пятое, наличие работы OpenGL проверяется командой: glxinfo | grep rendering
Если в ответе есть: direct rendering: Yes. Значит все OK. Это легко проверяется в гуле, надеюсь вас там не забанили.
Но правда и тут есть нюанс, если в ответе будет "OpenGL renderer string: Software Rasterizer". Тогда да, используется программный рендер.
Шестое, RK3588 Brief Datasheet.pdf, раздел GPU указана поддержка:
OpenGL и Vulkan. Не буду повторяться, рыбки это тест OpenGL, Vulkan проверялся играми из Steam.
Все это работает, и весьма неплохо, в тот же Left 4 Dead 2 можно в принципе нормально поиграть.
Если вы продолжаете утверждать, что не используется аппаратный рендер OpenGL и Vulkan, то это уже не ко мне, а к специалистам в белых халатах.
Седьмое, особенно забавно звучит ваш ответ на вопрос "как включить аппаратное ускорение графики", да просто возьми другой дистрибутив с другим ядром и драйверами. Неа, не надо уходить от ответа, конкретно напишите, как мне "включить правильное аппаратное ускорение" для образа который я использовал. Ежику понятно, что другой дистрибутив и другое ядро Linux даст другие результаты. Вы докажите, что в вашем примере fps в тесте с рыбками и играми из Steam будет выше.
Вы там заявили "Этими моими наработками активно пользуется", отлично, докажите на конкретном примере.
Возьмите любую плату на Rockchip из списка поддерживаемых Joshua-Riek/ubuntu-rockchip, коих предостаточно. Запустите на этой плате сборку Joshua-Riek/ubuntu-rockchip без дополнительных библиотек и патчей, т.е. "as-is". Выполните тесты, которые указаны в этом посте. Затем возьмите волшебный Armbian, установите, как вы считаете правильно аппаратное ускорение, выполните те же самые тесты. И по итогу напишите пост как все надо делать. И если результаты fps в играх будут кратно выше, а не пределах колебания погрешности, то я лично готов вам мужественно пожать руку.
Затем я ваш пост переведу на английский язык и отправлю Joshua-Riek и скажу ему, что он ничего не понимает в так называемом аппаратном ускорение и водит общественность в заблуждение.
У вас в профиле написано "Инженер", я не считаю себя инженером, но меня учили инженерному делу. Так вот, настоящие инженеры мне говорили "практика критерий истины", на словах мы все тут великие, могучие, и выше туч. Я свое слово сказал, тесты выполнил, теперь очередь за вами, докажите свою правоту на практике, напишите пост.
ginkage
17.12.2024 08:38Ссылки на коммиты? Извольте: дистрибутив, ядро.
Мои наработки в ROCKNIX: раз, два.
Vulkan проверялся играми из Steam.
Разве что llvmpipe, т.е. софтверно. Нет, в образе Joshua-Riek пока не поддерживается Vulkan, см. issue раз и два. Да, эти образы устарели, Joshua выгорел и больше не работает над ними так, как раньше. Поэтому, да, в них старое ядро и старые драйверы (и, повторюсь, Vulkan всё же не поддерживается).
как мне "включить правильное аппаратное ускорение" для образа который я использовал
Для этого надо удалить все следы Mesa и таки поставить вышеуказанные пакеты. Но, да, нужно более новое ядро, т.к. Joshua специально удалял коммиты, которые обновляют драйвер ядра Mali, чтобы поддерживать совместимость с Panfork — в ущерб производительности. Кстати, сам создатель Panfork в своё время выкладывал инструкцию, как использовать правильные драйверы. Однако, перелопачивать конкретно образ Joshua-Riek, хоть и возможно, но заметно дольше и трудозатратнее, чем просто взять новый дистрибутив с новым ядром.
Что касается игр — таки да, результаты именно что будут кратно выше. Я специально занимался именно юзкейсом игр в рамках проекта Retro Lite CM5, точно знаю, о чём говорю.
Fox_exe
17.12.2024 08:38А можете повторить тесты из статьи, но с полноценным, аппаратным, ускорением? Чисто для наглядности, на сколько оно шустрее софтверного ускорения?
ginkage
17.12.2024 08:38Ну, например...
Fox_exe
17.12.2024 08:38А мне казалось, что на GPU оно раз в 5 быстрее CPU должно работать... (а получается только в 2... Mali настолько слабый?)
ginkage
17.12.2024 08:38Таки нет: и то, и другое всё же Mali, просто одно из них использует древний самопальный драйвер, а другое — официальный драйвер ARM.
Но даже между этими драйверами разница может составлять от трёх и более раз, в зависимости от сложности рендера (Aquarium в этом смысле — так себе тест, на самом деле, это почти 2D).
Канонический пример — эмулятор Dolphin, особенно с игрой F-Zero GX. У меня она работает на 60 fps, тогда как с Panfork'ом это был диафильм.
NutsUnderline
17.12.2024 08:38пока пользователю придется разбираться как включить то что должно работать из коробки говорить об применении для широкого пользователя как то смешно. в "мастадае" тоже не все сразу появилось, да и разборки "ты кто вабще такой" всегда были, но продираться сквозь это - удовольствие не для всех.
а так рассказ тут любопытный, хорошо кто то этим занимается, спасибо за это
ginkage
17.12.2024 08:38Или вот, Half-Life 2. Оговорюсь, что здесь я использовал проект Source Engine, а не Steam (тот ставить долго, а Source у меня уже был собранный). Но на скорость графики это влиять не должно.
dulimov
17.12.2024 08:38Как быть обладателям Orange Pi 5 Pro, если для неё не появляются новые версии ядра? В чём причина такого положения дел? Почему видеоускорение и другие функции, связанные с аппаратным обеспечением, остаются недоступными? Как можно это исправить?
REPISOT
17.12.2024 08:38Производительность ARM процессоров каждый год увеличивается и все ближе приближается к x86 процессорам
Ну да, а х86 процы, наверное, остановились в своем развитии. Поэтому автор для сравнения берет i7-3520M 2012г.
copycat11
17.12.2024 08:38Итоговый вердикт: Да, Orange PI 5 Plus способен заменить домашний/офисный ПК, но не все так однозначно.
Автор, попробуй использовать Orange PI 5 Plus дальше запуска рабочего стола. Допустим даже что текст не перевод и не компиляция.
Я решил покупать Orange PI 5 Plus для настольного применения увидев в обзорах работающее в браузере ускорение видео. На "обычном" amd64-IBM-PC linux ситуация долгое время была такой - драйвера есть, нужные софты тоже, и почти всё работает, в том числе игры, иногда с большим FPS чем на windows. Только вот видео в браузере декодируется центральными процессором. То есть логика такая: на апельсинке даже видео в браузере аппаратно обрабатывается - значит всё остальное должно работать тем более!
За образом ОС естественно первым делом пошёл на официальный сайт. На официальном сайте - ссылки на Google Drive с которого не скачать из-за превышения лимита скачиваний, и это не исправляют месяцами. Поиски образов заканчиваются скачиванием с torrent-раздач (неофициальных), не самый надёжный источник, но за неимением лучшего, как говорится. От "официальных" сборок не ждите оптимизации уровня RpiOS, это скорее ZverCD-сборки Windows, если не хуже. Видео в браузере действительно работает, в пропатченном Chromium, остальными браузерами пользоваться невозможно. Открытие видеофайла любым офлайновым плеером через несколько минут приводит к зависанию системы, неважно используется рабочий стол на X.org или Wayland. Таких совершенно неожиданных грабель очень много, предыдущий опыт использования linux на десктопе почти не помогает.
Производительность. Синтетические замеры мало что значат. Сборка тяжёлого проекта nodejs примерно в 1,5 раза дольше чем на Intel core i5-7500. Производительность на ватт возможно у RK3588 выше, производительность на доллар зависит от того как оценивать своё время.
isden
17.12.2024 08:38Процессор даже без радиатора не сильно греется, но радиатор все равно требуется.
У меня есть сабжевый аппарат. Без радиатора я бы его не рискнул запускать. Греется сильно. Сейчас работает в официальной металлической коробке-корпусе (она же пассивное охлаждение) с некоторыми допилками (по дефолту хреново прижималась к чипу, пришлось добавить еще небольшой слой металла, плюс приклеил сверху 4 радиатора от m2).
Joshua Riek
Всячески рекомендую. Все работает хорошо и стабильно. Армбиан пробовал - из коробки жарит на максимальных частотах и не умеет их сбрасывать когда нужно, плюс не работает видеовыход через usb.
Да, еще порекомендовал бы сразу покупать БП на 4 ампера (например официальный для RPi5 =)). С БП на три ампера иногда не хватает мощности и начинаются глюки и отвалы (пробовал на 3 разных).
Areso
17.12.2024 08:38Да, еще порекомендовал бы сразу покупать БП на 4 ампера
Вместо того, чтобы завести копеечный PD, английские мыши продолжали есть кактус, и с каждым поколением у кактуса иголки все длиннее.
sdy
17.12.2024 08:38Спасибо за статью, по названию думал сначала пропустить, но начал как обычно с комментов смотреть и тут прям очень полезное обсуждение нашел. В любом случае, несмотря на некоторый негатив в комментах, дискуссия однозначно получилась очень полезной
Так получилось что сегодня искал опцию заморозки ядра, потому что Armbian в очередной раз обновил armbian-config и теперь там такого нет, а тут прям по тексту команды нужные. Что они там за armbian-config так рьяно взялись непонятно, столько времени не трогали, а тут решили все перекроить
vorphalack
17.12.2024 08:38вот интересно, пишу эти строки прям щас с i7-3520M (Thinkpad X230 Tablet) с 16Гб оперативки.
Win10, Firefox текущий, Speedometer 2.0 - 69.2 если проц не трогать, и 99.8, если прижать его на максимальную скорость. как там 113 намеряли?
(Speedometer 3.0 - 5.46/6.17)
MinimumLaw
А что там с портом EDK II? Им пользоваться уже можно или все так же "в процессе"? Система просит (прямо требует) наличия UEFI, а идет с загрузчиками более характерными для мира Embedded.
kenomimi
А зачем?
U-Boot куда проще, пририсовать к нему морду на lvgl - дело нехитрое (и никому особо не нужное). Управление загрузкой из менюшки вроде есть в конфигах сборки, мультибут можно сделать.
Плюс все текущие рабочие реализации UEFI - закрытые анально-огороженные поделия от жирных прожорливых компаний, и доработка под арм их софта удорожает плату баксов на 50-100 при текущем крохотном тираже. А открытые некому дорабатывать, так как полной отчуждаемой доки на чип нет даже у самого производителя, плюс у производителя нет экспертизы под UEFI... Думаю, до того, когда массово не появятся ноуты и мини-пк на армах, UEFI ждать не стоит.
MinimumLaw
Ну, вопрос зачем - он понятен. DTB, как обязательный компонент системы. В параллельном мире есть ACPI и DSDT что несколько облегчает жизнь обычным пользователям (что бы это не значило). Во всяком случае в мире x86/AMD64 это прекрасно работает. Да и у Apple на ARM'ах вроде бы тоже.
По реализации - мне известен проект https://github.com/edk2-porting/edk2-rk3588 Правда я не знаю насколько он в принципе готов в работе. У меня RK3568 на столе (ну еще проектик есть на RK3399). А вот его https://github.com/jaredmcneill/quartz64_uefi - довольно странная штука. Что-то в нем работает, но готовности в промышленному применению точно нет.
Так что живем на Embedded решениях. И пользуемся вендорскими бинарями https://github.com/rockchip-linux/rkbin Что не здорово, но вариантов то нет.
mpa4b
Тем временем в мире risc-v: uefi (впилен в u-boot) -- стандарт, может загрузить grub, а далее полный контроль над тем что, откуда и как грузить.
MinimumLaw
Да здесь так тоже можно. Это совсем не Risc V специфичная штука. Но тут та же проблема - UEFI есть, а вот с ACPI все сильно сложнее. Все равно DTB'шка остается в том или ином виде.
kenomimi
Насколько понимаю, прелоадер (все эти бинари для памяти, флеша, ...) генерируется каким-то хитрым софтом из кусочков машинного/ассемблерного кода, и как таковых человекочитаемых сорцов не имеет. И как бы авторство сего софта там не было за самим ARM.
TEE вроде бы есть опенсорсный, если бинарь не устраивает. И опять же ноги этого бинаря растут из материнской ARM...
MinimumLaw
Так кактус-то известен. Грызу в меру сил и возможностей. Просто была робкая надежда на то, что в мире RK3588'ых дела обстоят лучше, нежели в мире RK3568'ых.
А tee;elf (нужный для "ванильного" u-boot'a) я легко получаю из вендорского бинаря
Скрипт линковщика
Собрать, да так чтоб рабочим оказался, пока не получается.
czz
На ARM-маках нету UEFI и ACPI/DSDT, а тоже используется device tree (только в каком-то своем формате).
Но можно загрузить u-boot.
devzona Автор
Про UEFI будет далее, в комплекте с установкой Windows. Там более подробно рассмотрим текущий уровень доступных функций и сравним с U-Boot
rcl
Есть порт EDK II на rk3588. Тестировал только на orange pi5 rk3588s. Знакомый запускал Windows (но из-за отсутствия драйверов на винде ничего фактически не работает). С Linux все работает превосходно.
Однако с EDK II проблем нет.
MinimumLaw
Спасибо.
Конечно, оптимистичное проблем нет точно несколько не соответствует действительности. Достаточно посмотреть на ACPI таблицы https://github.com/edk2-porting/edk2-rk3588/tree/master/edk2-rockchip/Silicon/Rockchip/RK3588/AcpiTables Понятно, что есть альтернатива в виде "вшитых" DTB'шек - https://github.com/edk2-porting/edk2-rk3588/tree/master/devicetree/vendor Но это скорее костыль, нежели решение.
Ну и с поддержкой "ванильных" (mainline) ядер. Насколько я понимаю, видеозахват все так же в планах. Тактирование пилится, но до сих пор в процессе. Видеокодеки и mali тоже не полномаштабно. Т.е. все живет в вендорском варианте ядра, которое для промышленного применения - с пониманием возможных рисков...
Но за неимением гербовой... пишем на чем можем.
rcl
Ну вы замахнулись. Ванильные ядра будут очень не скоро, а может и никогда. Пока идет портирование rockchip ветки, которая берет свое начало аж с 3-го андроидного ядра, в mailine, интерес сообщества к rk3588 может пропасть, ведь появятся новые SoCs.
Так что все сидят на 5-м ядре с проприетарными mali-дровами и молчат.
A edk2 пока пригоден для загрузки OS (и тут проблем нет) и б'ольшего пока не предвидится, может PXE кто-нибудь добавит.
MinimumLaw
Ну, при наличии работающего GMAC добавить PXE - это пара-тройка строк в конфиге EDK II. Не уверен, к слову, что оно уже не прописано. Правда надо смотреть на то, как там тот самый GMAC прописан. У меня на RK3568-ом была проблема с тактированием и поддержкой PHY'шки (у нас свой процессорный модуль и своя реализация). Пока до решения руки не дошли, к сожалению. Как и решить вопрос в поддержкой ряда NVMe накопителей. У меня есть пара - один работает, второй нет. При этом так только в EDK II - в u-boot и ядре Linux оба работают.
Остальное, к сожалению, довольно типичная ситуация. Особенно с чипами из Великой Поднебесной.