這里是SunshineBooming,GPU公司一枚小小的Driver工程師,主要工作是寫DirectX12 Driver,我會持續更新這個DX12 Spec系列,可能比較冷門,但是都是干貨和工作中的心得體會,有任何GPU相關的問題都可以在評論區互動,知無不言:
DirectX12 Spec 總目錄
目錄
- 1. 圖形驅動的本質?
- 2. 參考資料
1. 圖形驅動的本質?
- 圖形驅動其實重點落在驅動二字上,與圖形學聯系并不密切。你可以看到絕大多數圖形驅動的開發人員,其實不太了解圖形學。
- 拿directx12的驅動開發人員來說,我們更關心的是,與windows系統的交互(特別是drirectx12的runtime),與gpu硬件的交互(各種gpu架構指令,硬件設備特性,以及痛苦地為gpu硬件缺陷打patch…)。
- 而去剖析directx12圖形驅動(包括umd+kmd),它其實重點做了2件事:生成gpu硬件指令,準備指令執行過程中需要的數據。這聽著是不是很耳熟:任何的程序,只不過是指令和數據的集合。
- 所以歸根結底,圖形驅動是運行在cpu端的程序,它的職能就是為gpu硬件準備command+data,然后控制gpu硬件狀態:
2. 參考資料
- a trip through the grapics pipeline(這個網上很多鏈接,就不貼pdf了)
- https://learn.microsoft.com/zh-cn/windows-hardware/drivers/display/windows-vista-and-later-display-driver-model-architecture