向左走,向右走?AMD 和 Nvidia 在顯卡驅動方面的新舉措
AMD 宣布統一 GPU 驅動架構
在正在舉行的 X.org Developer's Conference 上,AMD 宣布了統一化的 GPU 驅動架構,將當前開源的 radeon 及閉源的 fglrx 內核模塊統一成單一的開源內核模塊,將閉源部分限制在用戶態。
新驅動架構的亮點有:
-
引入名為 amdgpu 統一新內核模塊,替代現有的開源 radeon 及閉源 Catalyst 模塊。
-
新架構將大量運用 Linux 系統中現有的圖形組件,包括 TTM 圖形內存管理、DRM 模式設定、DRI 緩存共享及 GLAMOR OpenGL 2D 驅動等。
-
新架構對于將同時支持 Mesa 開源驅動及 Catalyst 閉源驅動,意味著僅需要簡單用戶態的操作(甚至無需重啟)即可在開源及閉源的 OpenGL 3D 及 OpenCL 通用計算實現之間切換。
-
新架構下 Catalyst 將僅局限于用戶態,其 OpenGL 及 OpenCL 實現將依然保持閉源,不會開放。
-
新架構包括統一且開源的 HSA 異構計算支持,可供開源 Gallium3D Clover 及 Catalyst OpenCL 使用。
-
對于有特殊需求的行業用戶,提供名為 FirePro 的閉源附加組件,同時相關的開源組件也需要做出修改以適應。
-
目前該新架構在針對即將發布的 Rx 300 "Pirate Islands" 系列 GPU 進行開發,沒有支持現有 Rx 200 及更早 GPU 的計劃。
對于最終用戶來說,這些變革帶來的好處有:
-
無需在為安裝閉源驅動進行編譯內核模塊的操作,且無需擔心新內核不兼容的問題。因為 amdgpu 作為上游內核模塊,必須要考慮用戶態兼容性。
-
在開源 Mesa 及閉源 Catalyst 之間的切換將非常簡單,對系統改動也局限在用戶態。
-
對于 Wayland 的閉源驅動支持將變得非常容易,僅需要實現要求的 EGL 即可。
-
通過現有的 DRI 架構可以流暢的實現雙顯卡切換。
NVIDIA 宣布 Wayland/Mir 及 KMS 支持策略
在 AMD 發布上述消息的第二天,NVIDIA 亦在 XDC 上宣布了其閉源驅動接下來的發展方向,包括 Wayland/Mir 支持。
不出意外的,NVIDIA 方面依然是主導閉源驅動,其新策略要點有:
-
他們的確在努力實現其閉源驅動對于 Wayland/Mir 的支持。
-
重寫其內核模塊,使其能以類似當前 PRIME 支持的方式關聯到 DRM KMS ioctls 上,可供 xf86-video-modesetting 使用。不過其將不會直接使用 KMS API。
-
在用戶態實現不依賴 X 的 EGL 支持,預期在今年秋季的 346.XX 上實現。不過由于內核態 KMS 的重寫沒完成,所以 Wayland/Mir 還是暫不可用。
-
相比 GBM,NVIDIA 更傾向于使用 EGLStreams 來處理幀緩存,從而減少分發自己 libgbm 的需要且兼容無 DRM 平臺(如 QNX)。
-
NVIDIA 并未公布具體完成時間點,不過估計在明年。
via : https://linuxtoy.org/archives/amd-announce-unified-gpu-driver-stack.html
via : https://linuxtoy.org/archives/nvidia-announces-waylandmir-kms-support-strategy.html