跳转到内容

Windows Display Driver Model

本页使用了标题或全文手工转换
维基百科,自由的百科全书

这是本页的一个历史版本,由Aaa839留言 | 贡献2015年4月4日 (六) 05:42 WDDM2编辑。这可能和当前版本存在着巨大的差异。

Windows Display Driver ModelWDDM),是微軟新一代的圖形驅動程式模型。

WDDM是改良舊有的Windows XP上的XPDM架構,XPDM是使用2D 的GDI(Graphics Device Interface)或 GDI+。與XPDM相比,WDDM是3D加速桌面,最早適用於Windows Vista之上[1]Windows 7支援 WDDM 1.1。

功能

WDDM 使用户能够同时运行多个 GPU 密集型应用程序。

一個Direct3D的圖形表面(surface)的內存區域,包含紋理網格(textured meshes)用於呈現2D或3D場景。WDDM允許不同的行程(process)共享整個Direct3D表面[2]。在WDDM推出之前,進程之間共享紋理是困難的,因為這將需要複製的數據,從顯存到系統內存,然後返回到視頻內存的新設備。

一旦某個WDDM驅動程式故障時,圖形堆疊(stack)將重新啟動驅動程式。圖形硬件故障時也會被攔截,必要時驅動程式將被重新設定。

WDDM還允許圖形硬件重置或拔出不正確的重新啟動。

限制

新的驅動程序模型要求有圖形硬件支持Shader Model 2.0。根據微軟2009年的調查,大約只有1-2%的硬件使用的XPDM,其餘已具備WDDM的能力。

WDDM 1.0版不支持多個驅動器在多適配器,多顯示器設置。如果一個多監控系統有多個圖形適配器供電的顯示器,無論是適配器必須使用相同的WDDM驅動程序。WDDM 1.1沒有這種限制。

WDDM 1.1

Windows 7 支援了 WDDM 1.1; 最早在 WinHEC 2008發布此一訊息. 新功能有:[3]

DXGI 1.1, Direct3D 11,Direct2DDirectWrite也將提供與Windows Vista平台更新。GDI / GDI +在Vista將繼續依靠軟件渲染。

WDDM 1.1向後兼容WDDM 1.0規範,1.0和1.1的驅動程序可直接用於Windows Vista。

WDDM2

2006年又有WDDM 2.0的消息,WDDM2.0版能夠解決GPU多工處理問題,但需要新一代GPU硬體支援才可以完成。 2014年,微軟於Build 2014 開發者大會公佈下一代DirectX API Direct X 12。與此同時DirectX 12需要建基於WDDM 2.0上,Direct X 12及WDDM 2.0 將內建於Windows 10[8] Direct X 12將廢除自動資源管理和任務管線管理,允許開發人員可低階控制顯示卡的記憶體和渲染狀態。WDDM 2.0 降低使用支援虛擬記憶體尋扯的 GPU 於核心模式下的驅動程式工作量。[9]並且多執行緒可於使用者模式的驅動程式上並列執行,從而降低CPU使用率。.[10][11][12]

注釋

  1. ^ Windows Vista Display Driver Model
  2. ^ Cross Process Resource Sharing
  3. ^ 3.0 3.1 WHDC: Graphics Guide for Windows 7. Microsoft. 12-06-2009. 
  4. ^ Windows DDK - GDI Hardware Acceleration. MSDN. [2009-06-14]. 
  5. ^ Windows DDK - DXVA-HD DDI. MSDN. [2009-06-13]. 
  6. ^ Windows DDK - Overlay DDI. MSDN. [2009-06-13]. 
  7. ^ Windows DDK - Multiple Monitors and Video Present Networks. MSDN. [2010-07-14]. 
  8. ^ Smith, Ryan. The DirectX 12 Performance Preview: AMD, NVIDIA, & Star Swarm. AnandTech. Purch. 6 February 2015. 
  9. ^ https://msdn.microsoft.com/en-us/library/windows/hardware/dn932171(v=vs.85).aspx
  10. ^ http://channel9.msdn.com/Events/Build/2014/3-564 Max McMullen. Direct3D 12 API Preview. Build 2014, session 3-564
  11. ^ Moreton, Henry. DirectX 12: A Major Stride for Gaming | NVIDIA Blog. Blogs.nvidia.com. 2014-03-20 [2014-03-26]. 
  12. ^ DirectX 12 - DirectX Developer Blog - Site Home - MSDN Blogs. Blogs.msdn.com. 2014-03-20 [2014-03-26].