Разработчиците на проекта Asahi Linux, който портва Linux за компютри Mac с ARM чипове на Apple, представиха инструменти за стартиране на съвременни компютърни игри в Linux среди, работещи на системи с чип Apple M1. Става въпрос за AAA игри, налични в каталога Steam и компилирани за архитектура x86_64. Инструментариумът осигурява интеграция на разработените от проекта драйвери, реализиращи API Vulkan 1.3 и OpenCL 3.0, с компонентите, които осигуряват емуляция на архитектура x86_64 и съвместимост с Windows.
Необходимите пакети вече са добавени в стандартния репозиторий на дистрибуцията Fedora Asahi Remix — за стартиране на игрите е достатъчно да актуализирате драйверите с командата „dnf upgrade —refresh“ и да инсталирате Steam с командата „dnf install steam“, която ще изтегли всички необходими зависимости. Стекът, използван за стартиране на игри, е построен на основата на Vulkan драйвера Honeykrisp, емуляторът FEX, който позволява изпълнение на x86 приложения на ARM системи, проекта Wine и прослойките DXVK и vkd3d-proton с реализация на API DirectX върху Vulkan.
Поради допълнителните разходи, свързани с емуляцията, се препоръчва наличието на 16 GB RAM в системата. Проблемите с подравняването, предизвикани от несъответствието между размера на страниците в оперативната памет, използвани в операционната система и необходимите за приложенията (програмите, компилирани за x86, са създадени за 4K страници, докато в Apple системи се използват 16K страници), беше решено чрез стартиране на виртуално ядро на Linux с друг размер на страниците. За стартиране на игрите в отделни виртуални машини своите ядра, беше използван инструментариумът muvm. Например, по този начин успяхме да стартираме играта Fallout 4.

За осигуряване на работата на игри като The Witcher 3 и Ghostrunner, които използват тесселация и геометрични шейдъри, се използва емуляция с помощта на изчислителни шейдъри. От все още не реализираните функции се отбелязва поддръжката на разредени текстури (sparse texturing) в драйвера Honeykrisp, необходима за стартиране на някои игри на базата на DX12, като Cyberpunk 2077. Освен това, се работи по оптимизация на производителността за постигане на 60 FPS в емулираната среда.

Източник: opennet.ru
