我怎么能覆盖Windows上的CUDA内核执行期限与二级GPU的?(How can I overri

2019-07-20 20:30发布

来自Nvidia公司的网站,它解释了超时的问题:

问:什么是最大内核执行时间? 在Windows上,个人GPU程序启动有大约5秒的最大运行时间。 通常超过此时间限制将导致通过CUDA驱动程序或CUDA运行时报告了发射失败,但在某些情况下可以挂整台机器,需要一个硬重置。 这是通过Windows的“看门狗”定时器,导致使用主图形适配器节目超时,如果他们跑的比最大允许时间长而引起的。

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

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

如此看来,,NVIDIA相信,或者至少强烈implys,具有多(英伟达)GPU和适当的配置,可以防止这种情况发生?

怎么会呢? 到目前为止我尝试许多方法,但仍存在对GK110 GPU烦人的超时是:(1)堵塞在二次PCIE 16X插槽; (2)不被连接到(3)被设置好的如在驱动器控制面板的专用PHYSX卡(所建议的一些其他人)使用任何监视器,但块出仍然存在。

Answer 1:

如果您的GK110是特斯拉 GPU K20C,那么你应该从WDDM模式TCC模式切换装置。 这可以用获取与驱动程序安装的NVIDIA-smi.exe工具来完成。 使用Windows的搜索功能找到这个文件(NVIDIA-smi.exe),然后使用命令行帮助(`NVIDIA-SMI --help)来发现所需的命令从WDDM切换GPU给TCC模式。

一旦你做到了这一点,窗口看门狗机制将不再注意你的GK110设备。

如果在另一方面,它是一块GeForce GPU,也没有办法将其切换到TCC模式。 你唯一的选择就是修改注册表设置,这是有点困难。 您的里程可能会有所不同,因为雷吉·基斯的确切结构因操作系统而异。

如果GPU在WDDM模式,它是受看门狗定时器。



文章来源: How can I override the CUDA kernel execution time limit on Windows with a secondary GPUs?