Заставка вредит производительности CUDA? - PullRequest
0 голосов
/ 01 февраля 2010

Я заметил, что время работы моих ядер CUDA почти утроилось с момента появления заставки. Это происходит, даже если это пустая заставка.

Как ни странно, это никак не связано с настройками питания. Когда я отключаю заставку и позволяю экрану отключиться, производительность остается неизменной. Когда я устанавливаю «Выключить монитор» на «Никогда» и позволяю включить заставку, это происходит.

Почему это происходит?
Есть ли способ противодействовать этому явлению?
Есть ли способ сказать окнам не пинать в заставке? (Как это делают медиаплееры?)

Я работаю на XP SP2 x64

1 Ответ

2 голосов
/ 01 февраля 2010

Во-первых, интересно, что CUDA так пострадала.

Но вот рецепт в win32, позволяющий избежать появления заставки:

Обычный подход состоит в том, чтобы периодически отправлять себе «поддельные» нажатия клавиш с помощью API SendInput, чтобы сбросить таймер неактивности, который вызывает заставку.

Можно остановить приложения, которые делают это, однако, используя параметр SPI_SETBLOCKSENDINPUTRESETS для SystemParametersInfo.

Другой подход - просто программно отключить заставку, используя SPI_SETSCREENSAVEACTIVE для SystemParametersInfo. Однако это глобальная настройка для всего пользователя - что, если две программы используют это перекрытие? Постарайтесь избежать этого!

...