Community Q&A

Where Wwise users help each other out!

Audiokinetic's Community Q&A is the forum where Wwise users ask and answer questions within the Wwise community. If you would like to get an answer from Audiokinetic's Technical support team, make sure you use the Support Tickets page.

What does the Audio Thread CPU measure in the Performance Monitor?

+1 vote
When connected to the a game running on a target platform, is the Audio Thread CPU a measure of:

 

1. The entire platform CPU?

2. The total CPU allocated to Wwise and if so, where is that value set. (is it a %?)

 

Thanks for helping to clarify this from the user perspective.

 

Cheers,

-damian
asked Jan 24, 2014 in General Discussion by Damian K. (920 points)

1 Answer

+4 votes
Audio Thread CPU is based on a counter that starts when the audio thread wakes up for audio processing, and ends when the audio thread processing is done. Depending on the platform, and the priority of other threads running on the same CPU core, this number can get a lot higher than actual CPU usage of the sound engine. Still, you can trust it as a '% of audio capacity', meaning that if it gets close to 100% the audio will most likely starve.
answered Jan 24, 2014 by Bernard R. (Audiokinetic) (30,200 points)
This is still a little difficult to understand. First, if it's a percentage, why is the Graph Max value defaulted to 10 (and not 100)?

Second, Damian mentioned setting some kind of allocation value. Since each project's "audio budget" will be different, it seems natural that you would need to set something in your project's engine for this to measure against.

Or is it just a pure measurement of the CPU usage on whatever core the sound engine is on? If so, would its readout be affected by other (non-audio) processes? Again, if that's the case, how can we use it to get valuable information about how much the sound engine is contributing to CPU load?

Thanks!
~RJ
I'd love some answers to RJ's follow ups!
The CPU max was recently increased to 50%. And please note that you can change the max value in the Performance Monitor settings. The value represents the percentage of time taken by Wwise on one CPU core.  But it does not account interruptions of other processses running on the same core, during the execution period.  This means the percent shown could be a higher number than Wwise is actually taking.

Reaching near 100% is dangerous, it could cause issues with audio.  So you want to make sure you keep it under a certain threshold for most demanding scenarios.
...