屏幕保护程序会损害 CUDA 性能吗?
Posted
技术标签:
【中文标题】屏幕保护程序会损害 CUDA 性能吗?【英文标题】:screensaver hurts CUDA performance? 【发布时间】:2011-01-11 15:14:26 【问题描述】:我注意到,当屏幕保护程序启动时,我的 CUDA 内核的运行时间几乎增加了两倍。即使是空白屏幕保护程序也会发生这种情况。
奇怪的是,这似乎与电源设置无关。当我禁用屏幕保护程序并关闭屏幕电源时,性能保持不变。当我将“关闭显示器”设置为“从不”并让屏幕保护程序启动时,它就会发生。
为什么会这样? 有没有办法抵消这种现象? 有没有办法告诉Windows不要启动屏幕保护程序? (媒体播放器是怎么做到的?)
我正在开发 XP SP2 x64
【问题讨论】:
屏幕保护程序启动时,您的 CPU 和/或 GPU 可能正在节流以节省电量。 【参考方案1】:首先,有趣的是 CUDA 受到如此大的影响。
但这里是 win32 中避免屏幕保护程序启动的秘诀:
一种正常的方法是偶尔使用SendInput
API 向自己发送“假”按键,以重置触发屏幕保护程序的非活动计时器。
但是,可以使用SystemParametersInfo
的SPI_SETBLOCKSENDINPUTRESETS
参数来阻止应用程序执行此操作。
另一种方法是以编程方式关闭屏幕保护程序,将SPI_SETSCREENSAVEACTIVE
用于SystemParametersInfo
。但是,这是针对整个用户的全局设置——如果两个程序使用这种重叠会怎样?尽量避免这种情况!
【讨论】:
以上是关于屏幕保护程序会损害 CUDA 性能吗?的主要内容,如果未能解决你的问题,请参考以下文章
更多的 HTML 属性或值会损害 Angular 的性能吗?