0

我注意到屏幕保护程序启动的那一刻,我的 CUDA 内核的运行时间几乎增加了两倍。即使它是空白屏幕保护程序,也会发生这种情况。

奇怪的是,这似乎与电源设置无关。当我禁用屏幕保护程序并关闭屏幕电源时,性能保持不变。当我将“关闭显示器”设置为“从不”并让屏幕保护程序启动时,它就会发生。

为什么会这样?
有没有办法抵消这种现象?
有没有办法告诉Windows不要启动屏幕保护程序?(媒体播放器是如何做到的?)

我正在使用 XP SP2 x64

4

1 回答 1

2

首先,有趣的是 CUDA 受到如此大的影响。

但这里是 win32 中避免屏幕保护程序启动的方法:

一种正常的方法是偶尔使用 API 向自己发送“假”按键SendInput,以重置触发屏幕保护程序的非活动计时器。

但是,可以使用SPI_SETBLOCKSENDINPUTRESETS参数 for停止执行此操作的应用程序SystemParametersInfo

SPI_SETSCREENSAVEACTIVE另一种方法是使用for 以编程方式关闭屏幕保护程序SystemParametersInfo。但是,这是针对整个用户的全局设置——如果两个程序使用这种重叠怎么办?尽量避免这种情况!

于 2010-02-01T08:29:01.880 回答