隨著遊戲畫面品質要求越來越高,現代顯示卡的渲染管線變得日益複雜,傳統的光線追蹤處理方式已開始成為效能瓶頸。Microsoft 最新的革命性技術「Shader Execution Reordering(SER)」正式加入 DirectX 12 Shader Model 6.9,為顯示卡帶來前所未有的效能提升。根據 Microsoft 的測試結果,Intel 的「B系列」(Battlemage)顯示卡在啟用 SER 後,效能提升幅度高達 90%,而 NVIDIA GeForce RTX 4090 也有 40% 的效能增長。
這項技術最初在 2025 年的 GDC(遊戲開發者大會)上伴隨 DXR 1.2 一起宣布,當時 Remedy Entertainment 展示了在《Alan Wake 2》遊戲中,結合 Opacity Micromaps(OMMs)和 Shader Execution Reordering,光線追蹤消耗資源成功降低了三分之一。
SER 運作原理:打破光線追蹤瓶頸
SER 的全名是「Shader Execution Reordering」(著色器執行重排序),其核心概念在於優化光線追蹤效率。由於許多光線追蹤工作負載具有隨機性質(stochastic nature),DXR 應用程式常常遭受「分歧的著色器執行」和「分歧的資料存取」問題所苦。
傳統方式的瓶頸是:當單一光線擊中多個物體,且每個物體需要不同的著色器時,傳統方式會讓 warp 中的每個執行緒相互等待,導致大量的閒置時間。這種情況下,即使顯示卡擁有強大的運算能力,卻因為執行順序不佳而無法充分發揮潛力。
SER 的解決方案
透過 SER,所有被光線擊中的物體會先被儲存起來,然後根據兩個關鍵因素進行重排序:
- 空間位置(Spatial Locations) – 根據物體在 3D 空間中的位置排序
- 著色器相似性(Shader Similarities) – 將需要相同著色器的物件排在一起
這使得執行過程能以更加「連貫」(coherent)的方式進行,大幅減少執行緒等待時間,讓顯示卡的運算資源得到更充分的利用。
「HitObject 與 SER 的結合特別強大,能夠利用 HitObject 中的資訊和使用者提供的額外提示,進一步提升 hit/miss 處理的連貫性潛力。」— Microsoft
HitObject 技術:解耦光線追蹤各階段
除了 SER 之外,這次更新還引入了「HitObject」概念,它將光線追蹤的「遍歷」(traversal,包括 AnyHit 著色和 Intersection 著色)與「ClosestHit」和「Miss」著色解耦開來。
這種設計帶來了幾項重要優勢:
- 減少重複程式碼:過去常見的程式碼(如頂點擷取和插值)必須在每個 ClosestHit 著色器中重複,現在可以避免
- 更靈活的處理:簡單的可見性光線現在可以不必為了取得基本的命中資訊而執行完整的命中著色器
- 多來源調度:ClosestHit/Miss 的調度可以從遍歷以外的來源(如 RayQuery)開始
Shader Model 6.9 完整更新內容
這次發布的 Shader Model 6.9 帶來了多項重要更新:
| 功能 | 說明 |
|---|---|
| Long Vector | 支援最多 1024 元素的向量運算 |
| 16-bit Float Specials | HLSL 新增 IsNan()、IsInf()、IsFinite() 對 16 位浮點數的支援 |
| DXR 1.2 | 包含 Opacity Micromaps 和 SER |
| 16/64-bit Shader Ops | 這些功能現在是 SM 6.9 的必要功能 |
此外還包括多項客戶請求的功能改進,如修訂的資源視圖創建 API、週期性剪輯通知、增加的 dispatch 網格限制等。
支援硬體與使用方法
使用者無需擔心如何啟用這項功能,因為 SER 已整合至 Microsoft 的 Shader Model 6.9 中,需要 AgilitySDK 1.619 版本。
硬體支援
根據 Microsoft 的示範影片和測試結果,預期支援 SER 的硬體包括:
- NVIDIA Ada Lovelace 及以上架構(RTX 40 系列及以上)
- Intel Battlemage 系列(Arc B570/B580 等)
值得注意的是,SER 是 Shader Model 6.9 中的「必要功能」,這意味著所有顯示卡驅動程式都必須支援包含 SER 的著色器代碼。至於是否能實際獲取效能提升,則取決於個別顯示卡硬體的支援程度。
效能測試說明
Microsoft 在樣本測試中觀察到 Intel Arc B 系列顯示卡有 90% 的效能提升,NVIDIA RTX 4090 有 40% 的提升。不過 Microsoft 也特別指出,這些測試並非完全反映實際遊戲效能,因此玩家在實際遊戲中體驗到的效能提升可能會略低於上述數據。
開發者資源
Microsoft 同時發布了多項開發者資源:
- PIX 工具支援:SER 發布當天就獲得了完整的 PIX 支援[2]
- 範例程式碼:NVIDIA 的 RTX Path Tracing 範例和 Microsoft 的 D3D12RaytracingHelloShaderExecutionReordering 範例都已支援 SER
- 詳細文檔:完整的 SER 技術規格可在 GitHub 上的 DirectX 官方規格文件中找到
對玩家的意義
對於廣大 PC 遊戲玩家而言,DirectX 12 SER 的正式支援意味著未來的光線追蹤遊戲將能夠在保持畫質的同時,獲得更流暢的幀率表現。特別是對於使用 Intel Arc B580 等中階顯示卡的玩家,這項技術有望讓他們在光線追蹤遊戲中獲得接近高階顯示卡的體驗。
隨著愈來愈多的遊戲開發者採用 Shader Model 6.9 和 SER 技術,我們可以期待看到更多支援即時光線追蹤的遊戲作品,為 PC 遊戲帶來更逼真的視覺效果(希望別唬玩家呀…)。

