混合图形 CUDA 启动



我有一台混合图形笔记本电脑,我使用的是 Windows 7,我打算运行一个也包含 cuda 的C++代码,当轮到 GPU 启动时,我的 nvidia GPU 需要几秒钟才能启动,我想还需要几秒钟才能预热,有没有办法在运行代码后启动 GPU(例如在 main() 函数的第一行)?

提前谢谢。

我提出了一个更好的选择。既然您使用的是Windows,您是否考虑过强制程序从NVIDIA GPU启动?如果您使用的是 NVIDIA Optimus(没有用于切换显卡的物理开关的笔记本电脑),请尝试以下操作:

右键单击使用 CUDA 的程序,在上下文菜单中,有一个名为 "Run with graphics processor" 的选项,然后在下面选择 "High-performance NVIDIA processor" .请注意,如果您使用的是Visual Studio,则可以使用此方法启动Visual Studio。这样,您的非 CUDA 卡对程序将不可见:-)

根据我的经验,如果您尝试进行 CUDA/OpenGL 互操作,如果没有这种方法,您将遇到问题。有时,OpenGL 上下文是为非 NVIDIA 卡创建的,而 CUDA 上下文是在 NVIDIA 卡上创建的,从而导致奇怪的错误。

尝试输入:

cudaSetDevice(0);

作为main函数的第一行。 或者您也可以尝试使用:

cudaFree(0);

最新更新