I think APO developers have the right to expect that APOProcess should only be called on an MMCSS thread, and therefore the CPU should be at full strength. http://support.microsoft.com/ is the entry point for filing a support issue. From: wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Eldad Kuperman Sent: Wednesday, April 2, 2014 4:18 PM To: wdmaudiodev@xxxxxxxxxxxxx Subject: [wdmaudiodev] Re: Core processor enters idle state while APO is processing audio Hi Matthew, Actually we do use the Windows Performance Analyzer. We also know that the system clock has been changed (clocked down) during playback and this is the reason to the problems. Is this wrong behavior is a system issue problem or is it expected to be handled gracefully by the APO developers? We are being pushed by our customer to resolve this asap, can you please let me know what support link do you refer and what is the fastest way to get the assistance attention? Thank you, Dadi From: wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx> [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Matthew van Eerde Sent: Thursday, April 3, 2014 1:59 AM To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx> Subject: [wdmaudiodev] Re: Core processor enters idle state while APO is processing audio If you can narrow down the repro, the next step is to take some traces and file a support issue. The Windows Performance Analyzer might also be useful if you want to look into things on your side as well. http://msdn.microsoft.com/en-us/library/windows/hardware/hh448170.aspx From: wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx> [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Dadi Sent: Wednesday, April 2, 2014 3:42 PM To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx> Subject: [wdmaudiodev] Re: Core processor enters idle state while APO is processing audio Hi Matthew, No, it is Windows 8.1. Is there any other information that can help? Dadi 2014-04-03 1:28 GMT+03:00 Matthew van Eerde <Matthew.van.Eerde@xxxxxxxxxxxxx<mailto:Matthew.van.Eerde@xxxxxxxxxxxxx>>: The thread that APOProcess is running on should already be registered with the Multimedia Class Scheduler Service. This in turn should guarantee it runs at very high priority for short bursts. If you're running on a Server SKU, the Multimedia Class Scheduler Service is basically neutered. Is it possible that those few production machines are all running the Server SKU? From: wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx> [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx>] On Behalf Of Dadi Sent: Wednesday, April 2, 2014 3:01 PM To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx> Subject: [wdmaudiodev] Core processor enters idle state while APO is processing audio Hi, On few machines while audio is being played, the machine has entered an idle state that caused our processing inside APOProcess to process too slow and not return on time. This caused lost frames and bad noise has been heard. Our code is optimized and the above case is rare but still occurs on few production machines. Note that we have three APOs running in memory (Render MFX, EFX and capture MFX) simultaneously. Is there a way to programmatically avoid such case? We tried to set the power parameter GUID_PROCESSOR_IDLE_DISABLE and this indeed prevented the processor to become idle and the problem didn't reproduced. We can use that in LockForProcess (to set the flag) and UnlockForProcess (to revert the old value of the flag). But this way might not be the right way because this setting is a global power system setting that overwrites the user's active power scheme. Also - the user can modify the active power scheme at any time... What is the best way (or the right way) to resolve it? Also, isn't audiodg.exe responsible to protect the process thread from such case? Thanks, Dadi