Asahi 是 Apple AGX GPU 的開源驅動程序,為 Apple M4.6 和 M3.2 晶片提供對 OpenGL 1 和 OpenGL ES 2 的支援。值得注意的是,蘋果M1晶片的原生顯示卡驅動僅實作了OpenGL 4.1規範,而對OpenGL 4.6的支援卻是首次出現在開源驅動中。現成的驅動程式套件已經包含在 Fedora 儲存庫中,可用於專門的 Fedora Asahi Remix 39 版本,該版本專為安裝在具有 Apple ARM 晶片的系統上而設計。
此外,圖形標準制定聯盟 Khronos Consortium 已認可蘋果 M1 和 M2 晶片中包含的 AGX GPU 的開源 Asahi 驅動程式完全符合 OpenGL 4.6 和 OpenGL ES 3.2 規範。該驅動程式成功通過了 Kronos 一致性測試套件 (CTS) 的所有測試,並已列入認證驅動程式清單。測試在運行 Asahi 發行版的蘋果 M1、M1 Pro/Max/Ultra、M2 和 M2 Pro/Max 設備上進行。 Linux Fedora Remix、Mesa 24.0.0 和 X.Org X Server (X11_GLX)。蘋果公司針對 M1 和 M2 晶片的專有驅動程式尚未包含在 Khronos 認證驅動程式清單中。獲得認證後,Khronos 即可正式聲明其產品與圖形標準相容,並使用相關的 Khronos 商標。
M1 GPU 缺少實作 OpenGL ES 3.2 和 OpenGL 4.2 所需的一些硬體功能,因此這些缺少的功能已使用現有功能實作。例如,幾何著色器、曲面細分和頂點著色器的流輸出(變換回饋)是使用計算著色器實現的,物件的剔除(剔除距離)是透過插值實現的,而剪輯控制是透過頂點著色器結尾實現的。展望未來,Apple AGX GPU 的開放驅動程式開發將專注於提供對 Vulkan 圖形 API 的支持,計劃使用 OpenGL 驅動程式中一些已經測試過的標準程式碼來實現。
我們在此提醒您,針對 Apple M1 和 M2 GPU 晶片,目前正在開發兩個相互配合的驅動程式:核心的 DRM(直接渲染管理器)驅動程式 drm-asahi 和核心驅動程式 drm-asahi。 Linux核心級驅動程式是用 Rust 編寫的,而 Mesa 的 asahi 驅動程式是用 C 編寫的。核心級驅動程式是從零開始開發的,並考慮到了未來對 Vulkan API 的支持,而用戶空間 API 的設計則考慮到了新的 Intel Xe 驅動程式提供的 UAPI。由於 Apple M1/M2 晶片使用自己的 GPU,運行專有韌體並使用相當複雜的共享資料結構,因此這些獨立的驅動程式是透過對外部驅動程式進行逆向工程開發的。 macOS.
來源: opennet.ru
