„Kontrola” działająca na systemie Asahi Linux
Wygląda na to, że wszystkie cuda, jakie namalowano na temat projektu „Asahi Linux”, nie będą tylko słowami, ponieważ twórcy tej dystrybucji ciężko pracowali od czasu ogłoszenia projektu mającego na celu wyniesienie tej dystrybucji Linuksa na inny poziom.
Asahi Linux ma nieco ponad trzy lata rozwoju i w tak krótkim czasie udało jej się wyróżnić na tle innych dystrybucji, nie tylko ze względu na swoje możliwości charakterystyczne dla pracy na komputerach z chips jabłkowy M1, ProM1, MaxM2, M2, ProM2, Max i M2 ultra, ale także za osiągnięcie wielkich postępów w sekcji graficznej w Linuksie.
I to ostatnio that Zespół programistów Asahi Linux przedstawił zestaw narzędzia umożliwiające uruchamianie gier AAA na komputerach z chipem Apple M1 i wspomina się, że jednym z głównych wyzwań technicznych była różnica w wielkości stron pamięci, ponieważ programy skompilowane dla architektury x86 są zaprojektowane do obsługi stron 4K, podczas gdy systemy Apple wykorzystują strony 16K.
Aby usunąć tę rozbieżność, wdrożono drugie jądro Linuksa w środowisku wirtualnym, Zmontowane specjalnie do obsługi różnych rozmiarów stron pamięci. Osiąga się to dzięki narzędziom muvm, które pozwalają na uruchamianie gier na niezależnych maszynach wirtualnych, każda z własnym jądrem.
Jest jeden problem: rozmiar strony. Systemy operacyjne przydzielają pamięć w postaci „stron” o stałym rozmiarze. Jeśli aplikacja oczekuje mniejszych stron niż wykorzystuje system, zakończy się niepowodzeniem z powodu niewystarczającego wyrównania mapowania. To jest problem: x86 oczekuje stron 4K, ale systemy Apple używają stron 16K.
Chociaż Linux nie może mieszać rozmiarów stron pomiędzy procesami, możesz zwirtualizować inne jądro Arm Linux z innym rozmiarem strony. Dlatego uruchamiamy gry na małej maszynie wirtualnej za pomocą muvm, przechodząc przez urządzenia takie jak procesor graficzny i kontrolery gier. Sprzęt jest szczęśliwy, ponieważ system ma 16K, gra jest szczęśliwa, ponieważ maszyna wirtualna ma 4K, a Ty jesteś szczęśliwy, ponieważ możesz grać w Fallout 4.
narzędzia Są przeznaczone do obsługi gier AAA dostępnych na platformie Steam, oryginalnie skompilowany dla architektury x86_64. Zestaw narzędzi łączy sterowniki opracowane przez Asahi Linux, które implementują interfejsy API Vulkan 1.3 i OpenCL 3.0, wraz z komponentami emulującymi architekturę x86_64 i zapewniającymi obsługę gier Windows.
Fallout 4 na Asahi Linux
Jeśli chodzi o bardziej wymagające graficznie gry, takie jak Wiedźmin 3 i Ghostrunner, które opierają się na wykorzystaniu teselacji i shaderów geometrii, używana jest obliczeniowa emulacja modułu cieniującego aby działały poprawnie.
Jednak niektóre kluczowe funkcje są wciąż w fazie rozwoju. Na przykład kontroler Honeykrisp obsługuje już rzadkie tekstury, co jest istotną funkcją w grach korzystających z DX12, takich jak Cyberpunk 2077, ale szczegóły są udoskonalane, aby poprawić jego wydajność. Ponadto trwają prace nad optymalizacjami, aby zapewnić płynne 60 klatek na sekundę w grach w emulowanych środowiskach.
Warto wspomnieć, że Pakiety wymagane do włączenia tej funkcjonalności są już dostępne w standardowym repozytorium dystrybucji Fedora Asahi Remix. Aby uruchomić gry, użytkownicy muszą jedynie zaktualizować sterowniki za pomocą polecenia:
sudo dnf update --refresh
Następnie możesz zainstalować Steam za pomocą
sudo dnf install steam
I automatycznie zainstaluje wszystkie wymagane zależności.
Na koniec warto również wspomnieć, że sterownik Vulkan Honeykrisp, emulator FEX (umożliwiający uruchamianie aplikacji x86 na systemach ARM), projekt Wine oraz warstwy DXVK i vkd3d-proton, które implementują API DirectX na wierzchu Vulkan, są uwzględnione.
Twórcy wspominają, że ze względu na obciążenie związane z procesem emulacji zaleca się, aby systemy miały co najmniej 16 GB pamięci RAM i działały już w emulacji x86 ogólnego przeznaczenia.
Wreszcie, jeśli chcesz dowiedzieć się więcej na ten temat, możesz zapoznać się ze szczegółami w następujący link.