Search Unity

Feedback profiler: could we get ms instead of cpu%?

Discussion in 'Audio & Video' started by laurentlavigne, Jul 25, 2020.

  1. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,365
    it's much easier to do math on when releasing for multiple platforms
    upload_2020-7-25_15-35-17.png
     
  2. janm_unity3d

    janm_unity3d

    Unity Technologies

    Joined:
    Jun 12, 2012
    Posts:
    36
    Hi Laurent, these values come directly from the FMOD middleware and are just based on timestamps for the calculations happening on the different threads tasked with mixing, streaming and a little bit of bookkeeping on the main thread. So the most relevant thing for typical applications is the latter, which you see as "Other CPU", as that's a measure for the time spent on the main thread. You can get far more precise numbers in the Timeline view of the CPU Usage pane in the Profiler window -- here you'll see exact timings in the "Main Thread" row represented by AudioManager.Update and SoundManager.Update. You can also see what the two asynchronous mixer and streaming threads are doing in the "Audio" row. This window lets you zoom out and actually see how this fits in with the rest of the threads. When you zoom out you see the audio updates are repeated blocks. Here it's important to note that different platforms use different mixing buffer sizes for the audio processing, so this affects what the percentage of a given audio task actually is, as shown by the "DSP CPU" number. This is incorporated into the percentages, whereas with raw ms readings you need to hold it up against the current buffersize. But I agree -- Total Audio CPU is a bit of a strange number that doesn't tell much on its own being just the sum of DSP, Streaming and Other.
     
  3. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,365
    yes I'm fine with the stats we get, it's the unit I'd like changed to ms. for you that's 1 line of code, for me it's looking at the cpu tab, writing down the ms of the cpu usage (assuming that cpu% is % of the currently used cpu ms in the main thread...), audio%*ms.