團隊對 Cycles 渲染引擎的開發已持續了十年,如今也到了要對 Cycles 做出重大改進的時間節點,為此 Blender 啟動了 專案。由於技術和效能方面的原因,Cycles X 會取消對 AMD GPU 上 OpenCL 的支援。為了,AMD 通過與 Blender 合作,並使用 AMD HIP API 改善 Blender 對 AMD GPU 渲染的支援,以確保 AMD 顯示卡可以利用 Cycles X 中的所有增強功能。
OpenCL 是一種基於 C 語言,併為異構平臺編寫程式的框架,可以在許多支援它的 GPU 上執行程式。OpenCL 規定了用於對這些裝置進行程式設計的程式語言以及用於控制平臺和在計算裝置上執行程式的應用程式設計介面(API)。OpenCL 為使用基於任務和資料的平行計算提供了一個標準介面。
在之前版本的 Cycles 中,Blender 支援通過 OpenCL 框架進行渲染。然而在未來,Blender 希望將獨立的 OpenCL 程式碼與 C++ CPU 和 CUDA 渲染程式碼合併。簡而言之,對於 Cycles X,Blender 正在尋找一種方法來編譯一個單一的程式碼庫來降低維護和開發難度,並能在原本 Cycles 支援的所有裝置上使用,其中自然也包括 AMD 顯示卡。
AMD 為了解決這個問題向開發者提供了一個開源的解決方案 —— 。HIP(Heterogeneous-computing Interface for Portability)是一種 C++ 執行時 API 和核心語言,允許開發者從單一的原始碼為 AMD 和 NVIDIA 的 GPU 建立可移植的應用程式。這使得 Blender Cycles 的開發者可以編寫一套渲染核心並跨裝置執行。採用 HIP 的工具的另一個優勢是可以輕鬆地從現有的 CUDA 程式碼遷移到更通用的程式碼之上。
AMD 與 Blender 團隊在 Blender 3.0 的開發上已經密切合作了很長時間,如今在 Blender 3.0 中已經增加對 HIP 裝置的支援,並且相關的程式碼也已經合併至 Blender 3.0 Beta 版中(如下圖:Blender 偏好設定中已有相關選項)。
如果使用者現在就想在支援的 AMD 顯示卡上測試 Blender Cycles X 支援程度的話,還需要將 AMD Radeon 驅動更新至最新的測試版。不過需要注意的是,由於 AMD 驅動程式和 Blender 3.0 都是測試版,因此目前的支援仍處於預覽階段,並且伴隨著不穩定。(Blender 對 AMD HIP 的支援將在 3.0 版本中率先登陸 Windows 系統,Blender 3.1 才會支援 Linux 系統)
AMD 除了與 Blender 共同合作改善 AMD GPU 的渲染,還將繼續支援 Blender 基金會併為 Blender 的開發貢獻程式碼,使使用者受益,並改善他們的工作流程和體驗。
經 AMD 驗證的顯示卡相容列表:(其他型號暫未被官方驗證,並不代表不能使用)
- AMD Radeon PRO W6800
- AMD Radeon 6900 XT
- AMD Radeon 6800 XT
- AMD Radeon 6800
- AMD Radeon 6700 XT
- AMD Radeon 6600 XT
- AMD Radeon 6600