wiki:WindowsIssues

Version 2 (modified by davea, 11 years ago) (diff)

--

Windows Issue

Don't compute while movie playing

Problem: while a movie is playing there's no mouse/kbd input, and CPU usage can be low, so BOINC starts computing, possibly with GPU, and the playback is messed up.

How does BOINC know if a movie is playing? This was asked here: http://stackoverflow.com/questions/1154923/detect-movie-being-played-windows and the only answer was: make a list of video players, and see if any of them is running. That approach has many drawbacks.

Rom thinks there's a Windows API that media players call to tell the system not to start a screensaver. If we could read this flag, we could not compute when it's set.

The SystemParametersInfo() API has some stuff related to screensavers: http://msdn.microsoft.com/en-us/library/ms724947%28VS.85%29.aspx but it seems to be just whether the user has registered a screensaver (not whether it's eligible to run).

GPU usage tools: http://www.ozone3d.net/gpushark/

Don't turn on the fan

People don't like it when BOINC makes their fan go on high, especially if it pulses because of CPU throttling.

I think a good default policy would be to limit CPU usage (by # of cores and/or throttling) to keep from raising the fan speed. There are many possible policies. For any of them we need to be able to read the fan(s) speeds.

Some possibly relevant stuff:

ACPI http://www.acpi.info/

Windows Management Instrumentation: http://msdn.microsoft.com/en-us/library/windows/hardware/Dn614028(v=vs.85).aspx

Fan management tools http://www.almico.com/speedfan.php