机器学习和生物信息学实验室联盟

标题: 单显卡写CUDA程序,解除5s运行时间限制 [打印本页]

作者: shixiang    时间: 2017-2-12 10:50
标题: 单显卡写CUDA程序,解除5s运行时间限制
在写CUDA程序时,如果电脑只有一块N卡,那么windows操作系统下会有一个运行时间限制,官方说大概是5s左右(Linux下未知)。

以下是CUDA官方问答页面里的中文原文:

在 Windows 系统上,启动单个 GPU 程序的超级长运行时间约为 5 秒。超过这一时间限制通常会导致启动失败 (通过 CUDA 驱动程序或 CUDA 运行时间报告),但有时会导致整个机器中止运行,需要硬重置才能解决问题。
此问题是由 Windows「监视器」计时器所致,如果使用主要图形适配器的程序的运行时间超过了允许的超级长时间,该计时器便会导致程序超时。
鉴于这个原因,建议您在没有连接显示器并且没有扩展 Windows 桌面的 GPU 上运行 CUDA。在这种情况下,系统必须至少包含一个用作主要图形适配器的 NVIDIA GPU。


通过增加注册表字段,可以解除这个时间限制,代价是在CUDA程序运行时显示器不会响应鼠标键盘,直到程序运行结束恢复响应,所以如果不确定程序要跑多久,只能通过关机中断运行

增加注册表字段的步骤如下:
1. 在“运行”里输入“regedit”打开注册表:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\GraphicsDrivers
2. 新建一个DWORD(32位),名称为“TdrLevel”,类型为REG_DWORD,键值为0

亲测有效。

截图参考如下:
[attach]3433[/attach]





欢迎光临 机器学习和生物信息学实验室联盟 (http://123.57.240.48/) Powered by Discuz! X3.2