在 Asahi Linux 上運行的“Control”
看來,關於「Asahi Linux」專案的所有奇蹟都不會只是說說而已,因為自從該專案宣布以來,該發行版的開發人員一直在努力工作,以將該 Linux 發行版提升到另一個水平。
Asahi Linux 剛誕生三年多 的發展,並在如此短的時間內成功地將自己與其他發行版區分開來,不僅是因為它 在計算機上運作的特點 蘋果晶片 M1、ProM1、MaxM2、M2、ProM2、Max 和 M2 ultra,而且還實現了 Linux 圖形部分的巨大進步。
而且是最近 Asahi Linux 開發團隊展示了 一套 可讓您運行 AAA 遊戲的工具 在配備Apple M1晶片的電腦上,提到主要的技術挑戰之一是記憶體頁面大小的差異,因為為x86架構編譯的程式被設計為使用4K頁面,而Apple系統使用16K頁面。
為了解決這個差異, 第二個 Linux 核心部署在虛擬環境中, 專門組裝以處理不同的記憶體頁面大小。這是透過 muvm 工具實現的,這些工具允許遊戲在獨立的虛擬機器上運行,每個虛擬機器都有自己的核心。
有一個問題:頁面的大小。作業系統以固定大小的“頁”分配記憶體。如果應用程式期望的頁面小於系統使用的頁面,則會因映射對齊不足而失敗。這是一個問題:x86 期望 4K 頁面,但 Apple 系統使用 16K 頁面。
雖然 Linux 無法在進程之間混合頁面大小,但您可以虛擬化另一個具有不同頁面大小的 Arm Linux 核心。因此,我們使用 muvm 在小型虛擬機器內運行遊戲,並透過 GPU 和遊戲控制器等裝置。硬體高興是因為系統是16K,遊戲高興是因為虛擬機器是4K,你很高興是因為可以玩輻射4。
工具 它們旨在支援 Steam 上提供的 AAA 遊戲,最初是為 x86_64 架構編譯的。工具包 結合了 Asahi Linux 開發的驅動程序, 實作 Vulkan 1.3 和 OpenCL 3.0 API,以及模擬 x86_64 架構並為 Windows 遊戲提供支援的元件。
Asahi Linux 上的《輻射 4》
至於對圖形要求更高的遊戲,例如《巫師 3》和《幽靈行者》,它們依賴曲面細分和幾何著色器的使用, 使用計算著色器仿真 使他們能夠正常工作。
然而,一些關鍵功能仍在開發中。例如,Honeykrisp 控制器已經支援稀疏紋理,這是使用 DX12 的遊戲(例如《Cyberpunk 2077》)的基本功能,但正在完善細節以提高其效能。此外,我們正在進行最佳化,以確保遊戲在這些模擬環境中達到流暢的 60 FPS。
值得一提的是, 啟用此功能所需的軟體包現已可用 在 Fedora Asahi Remix 發行版的標準儲存庫中。要運行遊戲,用戶只需使用以下命令更新驅動程式:
sudo dnf update --refresh
之後你可以安裝Steam
sudo dnf install steam
並且它會自動安裝所有必要的依賴項。
最後,值得一提的是 Vulkan Honeykrisp 驅動程式、FEX 模擬器(允許在 ARM 系統上運行 x86 應用程式)、Wine 專案以及 DXVK 和 vkd3d-proton 層(它們在 Vulkan 之上實現 DirectX API),都包括在內。
開發人員提到,由於模擬過程引入的開銷,建議系統至少具有 16 GB RAM,並且它們也已經可以在通用 x86 模擬中運作。
最後,如果您有興趣了解更多,可以查閱詳情 以下鏈接。