Profiler: CPU usage in ms?

Hi,

I wanted to know if there is an option to turn on CPU usage in miliseconds? I think that current implementation of percentage is really hard to read. Even the official info in the documentation is not very helpful:

“The percentage represents how long it takes, in relation to the amount of time it has to complete a mix. For example, on XBox One where a mix block is 10ms (512 samples), 50% usage represents the mixer thread taking 5ms to complete.”
Source: https://fmod.com/docs/2.02/studio/profiling.html#reading-a-recorded-session

Without knowledge how long it takes to complete a mix on any platform, percentage is useless. Miliseconds are more useful especially because when optimizing operations in video games, it is important to see how an operation takes time in miliseconds and how long it takes after we improved it.

If it’s not possible to turn it on, I would like to request a feature: show CPU usage in ms.

Hi,

We are always looking to improve our documentation, are there any specific improvements we could make to this topic?

It is possible to calculate the expected completion time, further explained here: FMOD Engine | Core API Reference - System::getDSPBufferSize.
Summary:

  • For a bufferlength of 1024 and an output rate of 48khz (see System::SetSoftwareFormat), mix time in milliseconds = 1024 / 48000 * 1000 = 21.33ms. This means the mixer updates every 21.33ms.

Hopefully with the expected time the returned percentage will be more useful.

However, I can still pass on your feature request if you feel that would be more useful?

Thanks for the reply!

I’m going to reply to what you wrote out of order:

It is something, haven’t thought about it, however it still wouldn’t be available in FMOD Studio’s profiler window, what is my main point of interest when checking the performance. The pros of this approach is that all other team members on the project can see how much miliseconds FMOD operations take, but I mostly check the performance in FMOD Studio’s profiler window. For now I will use that.

With what you wrote about this expected completion time, until you made an update in FMOD to include miliseconds in the profiler window, I think it might be good to make a small note that if somebody is looking for miliseconds for Mix or Update, they can get it from Core API, and a link to that place.

Yeah, I would like this feature and I hope that others might benefit from that, too. Being able to see in FMOD Studio how much miliseconds the FMOD takes will be very useful, because it would be easier to compare the performance to the rest of the project. And, from what you said, it doesn’t look like a big addition to FMOD Studio.

Anyway, looking forward to adding it to FMOD Studio.

PS:


I think you missed a multiplication symbol in the getDSPBufferSize. :wink: