Asahi Linux vanta l'esecuzione di giochi Windows AAA

"Control" in esecuzione su Asahi Linux

"Controllo" in esecuzione su Asahi Linux

Sembra che tutte le meraviglie dipinte sul progetto "Asahi Linux" non saranno solo parole, dal momento che gli sviluppatori della distribuzione hanno lavorato duramente dall'annuncio del progetto per portare questa distribuzione Linux ad un altro livello.

Asahi Linux ha poco più di tre anni di sviluppo e in così poco tempo è riuscita a differenziarsi dalle altre distribuzioni, non solo per la sua caratteristica dell'esecuzione su computer con la patatina di mela M1, ProM1, MaxM2, M2, ProM2, Max e M2 ultra, ma anche per aver ottenuto grandi progressi nel settore grafico in Linux.

Ed è che di recente Il team di sviluppo di Asahi Linux ha presentato un insieme di strumenti che ti consentono di eseguire giochi AAA sui computer con il chip Apple M1 e si dice che una delle principali sfide tecniche fosse la differenza nella dimensione delle pagine di memoria, poiché i programmi compilati per l'architettura x86 sono progettati per utilizzare pagine da 4K, mentre i sistemi Apple utilizzano pagine da 16K.

Per risolvere questa discrepanza, un secondo kernel Linux è stato distribuito in un ambiente virtuale, Assemblato appositamente per gestire diverse dimensioni di pagina di memoria. Ciò è possibile grazie agli strumenti muvm che consentono l'esecuzione dei giochi su macchine virtuali indipendenti, ciascuna con il proprio kernel.

C'è un problema: la dimensione della pagina. I sistemi operativi allocano la memoria in “pagine” di dimensione fissa. Se un'applicazione prevede pagine più piccole di quelle utilizzate dal sistema, fallirà a causa di un allineamento della mappatura insufficiente. Questo è un problema: x86 prevede pagine da 4K, ma i sistemi Apple utilizzano pagine da 16K.

Sebbene Linux non possa mescolare le dimensioni della pagina tra i processi, puoi virtualizzare un altro kernel Arm Linux con una dimensione della pagina diversa. Pertanto, eseguiamo i giochi all'interno di una piccola macchina virtuale utilizzando muvm, passando attraverso dispositivi come GPU e controller di gioco. L'hardware è felice perché il sistema è 16K, il gioco è felice perché la macchina virtuale è 4K e tu sei felice perché puoi giocare a Fallout 4.

strumenti Sono progettati per supportare i giochi AAA disponibili su Steam, originariamente compilato per l'architettura x86_64. La cassetta degli attrezzi combina i driver sviluppati da Asahi Linux, che implementano le API Vulkan 1.3 e OpenCL 3.0, insieme a componenti che emulano l'architettura x86_64 e forniscono supporto per i giochi Windows.

Fallout4-Asahi Linux

Fallout 4 su Asahi Linux

Per quanto riguarda i giochi graficamente più impegnativi, come The Witcher 3 e Ghostrunner, che si basano sull'uso di tassellazione e shader geometrici, viene utilizzata l'emulazione dello shader computazionale affinché funzionino correttamente.

Tuttavia, alcune funzionalità chiave sono ancora in fase di sviluppo. Ad esempio, il controller Honeykrisp supporta già le texture sparse, una caratteristica essenziale per i giochi che utilizzano DX12, come Cyberpunk 2077, ma i dettagli sono in fase di perfezionamento per migliorarne le prestazioni. Inoltre, si stanno lavorando alle ottimizzazioni per garantire che i giochi raggiungano 60 FPS fluidi in questi ambienti emulati.

Vale la pena menzionarlo I pacchetti necessari per abilitare questa funzionalità sono ora disponibili nel repository standard della distribuzione Fedora Asahi Remix. Per eseguire i giochi, gli utenti devono solo aggiornare i driver utilizzando il comando:

sudo dnf update --refresh

Successivamente puoi installare Steam con

sudo dnf install steam

E installerà automaticamente tutte le dipendenze richieste.

Infine, vale anche la pena menzionare che il driver Vulkan Honeykrisp, l'emulatore FEX (che consente di eseguire applicazioni x86 su sistemi ARM), il progetto Wine e i layer DXVK e vkd3d-proton, che implementano l'API DirectX su Vulkan, sono inclusi.

Gli sviluppatori affermano che, a causa del sovraccarico introdotto dal processo di emulazione, si consiglia che i sistemi abbiano almeno 16 GB di RAM e che funzionino già anche in emulazione x86 generica.

Infine, se sei interessato a saperne di più, puoi consultare i dettagli nel seguente link