6

从 Nvidia 的网站上,它解释了超时问题:

问:内核执行的最大时间是多少?在 Windows 上,单个 GPU 程序启动的最长运行时间约为 5 秒。超过此时间限制通常会导致通过 CUDA 驱动程序或 CUDA 运行时报告启动失败,但在某些情况下可能会挂起整个机器,需要硬重置。这是由 Windows“看门狗”计时器引起的,如果使用主图形适配器的程序运行时间超过最大允许时间,则会导致它们超时。

出于这个原因,建议在 GPU 上运行 CUDA,该 GPU 未连接到显示器并且没有将 Windows 桌面扩展到其上。在这种情况下,系统必须至少包含一个用作主图形适配器的 NVIDIA GPU。

来源:https ://developer.nvidia.com/cuda-faq

所以看起来,nvidia 相信,或者至少强烈暗示,拥有多(nvidia)gpus,并且通过适当的配置,可以防止这种情况发生?

但是怎么做?到目前为止,我尝试了很多方法,但 GK110 GPU 上仍然存在令人讨厌的超时问题:(1)插入辅助 PCIE 16X 插槽;(2) 未连接到任何显示器 (3) 在驱动程序控制面板中设置为专用 physX 卡(如其他人推荐的那样),但阻塞仍然存在。

4

1 回答 1

5

如果您的 GK110 是Tesla K20c GPU,那么您应该将设备从 wddm 模式切换到 TCC 模式。这可以通过随驱动程序一起安装的 nvidia-smi.exe 工具来完成。使用 Windows 搜索功能查找此文件 (nvidia-smi.exe),然后使用命令行帮助 (`nvidia-smi --help) 查找将 GPU 从 WDDM 切换到 TCC 模式所需的命令。

完成此操作后,Windows 看门狗机制将不再关注您的 GK110 设备。

另一方面,如果它是 GeForce GPU,则无法将其切换到 TCC 模式。您唯一的选择是修改注册表设置,这有点困难。您的里程可能会有所不同,因为 reg 密钥的确切结构因操作系统而异。

如果 GPU 处于 WDDM 模式,则它受看门狗定时器的影响。

于 2013-07-14T02:12:48.670 回答