我正在編寫DirectX遊戲,當我在Optimus筆記本電腦上運行Intel GPU時,會導致可怕的性能。如果我使用上下文菜單強制使用NVIDIA GPU,或者將我的可執行文件重命名爲bf3.exe或其他着名的遊戲可執行文件名稱,則性能如預期的那樣。
顯然,當我不得不重新分配我的遊戲時,這兩種解決方案都不是可接受的解決方案,那麼有沒有一種方法可以強制筆記本電腦使用NVIDIA GPU?
我已經嘗試使用DirectX來枚舉適配器(IDirect3D9 :: GetAdapterCount,IDirect3D9 :: GetAdapterIdentifier)並且它不起作用:只有1個GPU正在報告(正在使用中)。在Optimus筆記本電腦中以編程方式強制NVIDIA GPU
回答
在轉換到GPU之前,Optimus白皮書http://www.nvidia.com/object/LO_optimus_whitepapers.html的確切含義尚不清楚。該白皮書稱DX,DXVA和CUDA呼叫被檢測到並將導致GPU開啓。但是此外,決定基於NVIDIA維護的配置文件,當然,您的遊戲還不存在。
有一件事可以嘗試CUDA呼叫,例如cuInit(0);
。與DX和DXVA不同的是,英特爾集成顯卡無法處理該問題,因此應該強制切換到GPU。
據http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf從302個開始驅動它足以與下列庫的一個靜態鏈接:vcamp110.dll,vcamp110d.dll,nvapi.dll,nvapi64.dll,的OpenCL 。.DLL,nvcuda.dll,cudart *,或導出NvOptimusEnablement變量在你的程序:
extern "C" {
_declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001;
}
+1爲啓用變量(和相應的鏈接);注意:不適用於我的310驅動程序,但在更新至320 – NobodysNightmare
後工作。應注意,NVIDIA控制面板中的首選圖形處理器設置必須設置爲「自動選擇」才能使其工作。 – Nathan
這不再適用(GTX 960M - 驅動程序v385.41) – Matthias
- 1. 以編程方式訪問筆記本電腦嵌入式風扇控制器?
- 2. 我可以以某種方式在我的Optimus筆記本電腦上的英特爾集成顯卡上運行X11,並在NVIDIA GPU上調試CUDA代碼?
- 3. 與Optimus筆記本電腦上的CUDA問題
- 4. 適用於Android的筆記本電腦/筆記本電腦
- 5. 以編程方式訪問筆記本電腦上的CPU風扇? (Windows)
- 6. 可以通過編程控制AC電源進入筆記本電腦嗎?
- 7. MySQL複製筆記本電腦
- 8. r筆記本電腦繪製線條
- 9. 從筆記本電腦
- 10. 從java監控筆記本電腦或筆記本電腦電源
- 11. 兩臺GPU的筆記本電腦上的硬件加速BufferedImage
- 12. 使用帶移動GPU(筆記本電腦)的Keras(Tensorflow後端)
- 13. 使用mediaDevices.getUserMedia在筆記本電腦上
- 14. rootbeer和Nvidia Optimus
- 15. Socket連接android與筆記本電腦的編程
- 16. 編程筆記本電腦的觸摸板
- 17. 舊筆記本電腦硬件Opengl-3編程
- 18. 該域名不存在電腦,筆記本電腦
- 19. Jupyter/IPython筆記本電腦:「全部運行」的快捷方式?
- 20. 如何使用uwp以編程方式在使用windows 10的筆記本電腦中以編程方式檢測飛行模式
- 21. 如何以編程方式停止筆記本電池的充電
- 22. 如何以編程方式保存Jupyter筆記本(iPython筆記本)?
- 23. IPython的筆記本電腦連接到外部的筆記本
- 24. Groovy筆記本電腦相當於IPython筆記本
- 25. 如何在iPhone筆記應用程序中以編程方式創建筆記
- 26. 如何知道TabletPC是在'筆記本電腦'或'平板電腦'模式
- 27. 如何在Google Analytics報告中過濾筆記本電腦/筆記本電腦用戶
- 28. NVIDIA的Optimus卡的OpenGL
- 29. 如何控制Windows筆記本電腦或winPad充電
- 30. 以編程方式將ipython筆記本保存爲腳本
有沒有人有這種方法的實際成功?我只是在創建我的OpenGL上下文之前嘗試調用'cuInit',我得到的不是NVidia的Intel上下文。 – rotoglup
@rotoglup:請讓我們知道您正在運行的操作系統,如果您找到解決方案,請將其添加爲對此問題的答案。 –
我正在運行Win7主頁x64 SP1 + NVidia 296.16驅動程序。對於如何繼續:我對NVIDIA®(英偉達™)Optimus平臺NVIDIA®(英偉達™)CUDA開發指南)(http://developer.download.nvidia.com/compute/cuda/docs/CUDA_Developer_Guide_for_Optimus_Platforms.pdf)doc提到,綁定OpenGL上下文到CUDA不適用於Optimus平臺,它說你需要NVidia控制面板中的「應用程序配置文件」......也許NVAPI允許以編程方式創建這樣的配置文件,但NVidia開發人員網站已關閉ATM。 – rotoglup