
我們的團隊擁有運行多個 Tesla V100 (16GB) 的 Windows Server 2016。 GPU 主要用於機器學習任務,但現在我們需要在 GPU 上進行一些「遊戲」(它實際上是一個模擬器,但它像遊戲一樣「玩」)。我們無法直接存取伺服器,而是透過 RDP+LDAP 連接到它。除了多個 Tesla 之外,該系統還有一個功能較弱且陳舊的 Quadro,它會自動用於渲染所有使用者的遠端會話。
一旦模擬器啟動,它會在啟動螢幕後立即崩潰,並出現錯誤:
DX11 錯誤:建立像素著色器時發生錯誤:80070057
雖然它可能只是寫得不好的應用程式(不排除它,因為我必須經歷下載和安裝它的整個大驚小怪),但我想排除它是由於應用程式使用“錯誤”(弱 Quadro )GPU。
我進入 Nvidia 設定面板(或不管它的名稱)並決定專門為該應用程式建立一個新的設定檔。我注意到兩件事:
對於 CUDA,我有兩組選項 - 全域(目前選擇所有 GPU - Tesla 和 Quadro)和自訂(我可以在其中為此特定設定檔選擇特定 GPU)。所有 GPU 均在此處可見
對於 OpenGL 渲染 GPU,我有三個選項 - 全域、自動和 Quadro。這裡看不到特斯拉。
我查看了一下,在整個設定檔配置中看不到任何 DirectX 設置,這本身很奇怪,但恕我直言,這不是主要問題。我嘗試查找有關 Tesla 渲染功能的信息,但官方(Nvidia 數據表)我找不到(這些都是有關高性能計算、數據中心等的營銷材料)。其他 GPU 基準測試線上平台確實提供了此類資訊(支援 DX12 和 OpenGL 4.6)。
這可能是驅動程式問題嗎?有些驅動程式會停用某些功能。或者也許我正在查看錯誤的配置參數。
PS:我能得到的關於 OpenGL(甚至不是 DX)和 V100 的最接近的資訊位於https://forums.developer.nvidia.com/t/can-i-use-opengl-in-windows-10-with-tesla-v100-gpu/67002/4。