Snapdragon X Elite, Kubuntu 25.04 aarch64
Laptop Lenovo Yoga Slim 7x Snapdragon X Elite, экспериментальная версия Ubuntu для запуска на Snapdragon aarch64.
На данном этапе ещё не работают:
- Bluetooth;
- звуковая карта;
- веб-камера;
- NPU hexagon.
Всего сообщений: 7
Laptop Lenovo Yoga Slim 7x Snapdragon X Elite, экспериментальная версия Ubuntu для запуска на Snapdragon aarch64.
На данном этапе ещё не работают:
Subj.
Вообще, Wine собираться под ARM64 умеет достаточно давно, но особого смысла от этого не было. То, ради чего нужен Wine, под ARM64, понятным образом, не заработает без эмуляции, в которую сам по себе Wine не умел. В самом же оффтопе для запуска x64 используется как стандартный эмулятор/транслятор xtajit64, так и ARM64EC ABI – что-то похожее на Universal бинарники в одной известной BSD-based OS.
Добавление такого в Wine был вопрос времени и.. в Wine 10.0 таки появилась официальная (экспериментальная) поддержка ARM64EC. Собранный с таким таргетом Wine вместе с готовым эмулятором, адаптированным к работе в окружении ntdll (Win32 не подходит) позволяет запускать как нативные приложения, так и x64, используя тот же механизм, что применяется в самом Windows-on-ARM.
Кому это надо? Энтузиастам на маках с Asahi навроде меня и… неожиданно Valve, которые делают VR шлем с ARM на борту.
По сравнению с старыми способами запуска Wine под эмулированным x86 Linux окружением (FEX/box64), тут всё работает чуть стабильнее засчёт прямого доступа к линуксовым либам (libvulkan, libwayland-client, libGL, etc..). И сколько-то быстрее – по идее, fsync/ntsync должен в таком окружении поддерживаться без проблем т.к. эмулируется только CPU-часть.
WoW64 (x86_32) тоже запускается, но менее стабильно – по большей части потому, что сама по себе поддержка wow64 в вине оставляет желать лучшего. Но для запуска инсталляторов хватает (многие до сих пор 32 битные).
С Wine-10.4 добавили поддержку работы оного на ядрах с размером страниц выше 4K – не знаю, как они это смогли реализовать (ведь не существует WoA устройств с таким размером), но разницы с запуском под 4K окружением и 16К я не заметил. Всё работает одинаково, разве что костыли с виртуальной машиной для обхода ограничений железа не нужны.
Собирается легко, если в системе есть clang/llvm 20:
./configure --enable-archs=i386,arm64ec,aarch64 --disable-tests --with-mingw=clang
Забавно, что в вышеупомянутом Darwin вайн собирается, но…
zsh: killed wineboot.
Похоже, что в XNU чего-то не хватает.
TL;DR игрушечки и приложения работают, на x64 стабильно, на x86_32 как повезёт.
P.S. Notepad++ на скриншоте нативный ARM64. Игра (DX12), очевидно, нет, только x64.
P.P.S. добавил тег asahi, потому что это одно из окружений, на котором wine теперь работает нативно. Скриншоты также сделаны под Asahi.
Помнится, первую игру которую я ставил себе после установки Ubuntu 10.04 - это за всегда была игра JAMP из бывшего игрового репозитория playdeb.net.
Ни одна игра так не цепляла как эта головоломка с реактивной белкой в колесе. Каждый раз когда играл в неё, обязательно откармливал птиц ягодами, которые попадались по пути и, как следует разогнавшись, взлетал наверх и, добравшись до пушки, залетал прямо на фонтан с желудями и наступает незадача. Как же съесть все эти желуди одновременно? Вот эту загадку я так и не решил.
Спустя годы, официальный сайт накрылся, playdeb.net уже тоже накрылся и я долго не мог поиграть в эту игру.
И тут, внезапно, оказалось, что эту игру можно скачать через архивную копию сайта из web-archive. Хоть сайт и помер, но файловый хостинг, хранящий исходники игры оказался очень даже работоспособным.
Скачал исходники этой легендарной игры, поставил всё что связано с libsdl1.2 и gcc:
sudo apt-get install libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl1.2-dev gcc
потом в директории с исходниками выполнил две простецкие команды
make
sudo make install
И игра успешно скомпилировалась и установилась. На Orange Pi 4 LTS под управлением Armbian Bullseye.
И должен сказать что драйвер Panfrost без каких-либо проблем отрисовывает эту игру с идеально плавным fps. И даже не проседает.
Много софта всякого накомпилял, например, gcc собирается часа 1.5(напомню, у Opi4 6 ядер, 2 A-72 2Ггц, 4 A-53 1.800 Ггц). Дольше всего собирался Qtwebrngine для браузера Falkon, около 16 часов. Либреофис собирается 6 часов. Для справки, проверял энергопотребление(у меня и монитор на 22" на одну линию подключён и диск большой с 12в питанием тут же) составляет при простое около 3 ват, а если компилять, то максимум 5 ват на несильной яркости, сильную не люблю. Как это всё работает сделаю отдельную тему в категории «рабочие места»
И да, всем, кто говорит, что арм64 не готов для десктопа я скажу, не только готов, а ждёт желающих)))
Всё тот же Raspberry Pi 4, но «разогнанный» до 2х ГГц и Linux уже 64-х битный.
В новый год без cisc!
По сути первый запуск платы jetson nano.
Для запуска использован официальный образ убунту 18.04 с сайта nvidia. Система невроятно неудобна и перегружена. Эти люди сюда даже либруофис поставили и даже пакет с ogl переходами не забыли...
Впечатления двоякие. Со второй попытки после рихтовки система заработала, но спотыкается в плане производительности. Есть подозрения, что дело в sd карточке. Буду пробовать ssd в m.2 С другой стороны в отличие от других плат греется несильно и хотя бы в корку не падает.
Закопался в одноплатниках двух Pine64 1Gb и Omega2. Не любитель проводов, соорудил мобильный Ethernet из Омеги из чудо-переходника USB-RJ45, хотя можно было обойтись и без переходника.
Поставил CRUX на Pine64, хотя под Armbian и так неплохо работает, но оказалось, что модулей различных устройств подготовлено не так много, особенно в дистрибутивах Андроид. Да и с 1Gb так просто по сайтам не походишь, попадаются очень безответственные создатели сайтов, что и с одной вкладкой вешают систему. Решил вспомнить source based дистрибутив, чтобы было проще компилять и давать другим в случае чего. Большие пакеты что-то не компилятся на Pine64 1Gb (FF, Chromium, Webkit, Qt4, Qt5 и прочее). Надо будет попробовать distcc, но хватит ли скорости WiFi.
Iperf на не самом последнем ядре показывает ~100Mbt соединение между двумя соснами, возможно, что можно и больше выжать. Может в клястер объединить, но будет ли прирост производительности в такой конфигурации.
Пытаюсь не тупить и понять что делать дальше. Хотелось бы хоть что-то автоматизировать дома, а то всё вручную полностью. Модули ардуино можно как-то подцепить к одноплатнику для нормального использования?
Или может какие-то коины можно намутить совсем простые)))