Imagination PowerVR SDK Blog

PVRTune Counter Query

pvrtune

#1

Hi,

I was analyzing PVRTune report for an application running on a SGX graphics core, i came across few counters whose functionality are little skeptical to me.

  1. System memory Load : Does it represent CPU or GPU memory load ?
  2. CPU load : Do the columns 1s and 32s represent data for the latest occurrence in the application ?
  3. GPU Load : Can Renderer and Tiler load together be considered as total GPU memory load ?

Hope this is the right place to post the above query.


#2

>>1) System memory Load : Does it represent CPU or GPU memory load ?
it represent the percentage of the total memory(both CPU and GPU) that is in use.
>>2) CPU load : Do the columns 1s and 32s represent data for the latest occurrence in >>the application ?
The columns show the average value of counters over the most recent timespan (e.g., the 32s column gives the average over the last 32 seconds).
>>3) GPU Load : Can Renderer and Tiler load together be >>considered as total GPU load ?
If you mean Render active and Tiler active, the answer is NO. because they can overlap with each other. also they just represent the the percentage of time that Tiler&Renderer tasks were active. Not the load for any hardware. We discourage developers from trying to calculate total GPU load on PowerVR, as it isn’t possible to accurately represent.This is primarily due to tiler, renderer and compute tasks being processed simultaneously and sharing many hardware units in their pipeline (for example, the shader engine).


#3

Hi Kevin,

Thanks for your input, was of great help.

But in regards with GPU load, during profiling of my application, Tiler and Renderer never overlapped (from the graph view). So can i assume the GPU load to be sum of the both the counters.?

Could you please tell me what exactly compute tasks refer to ?


#4

Hi uday,
Even if they never overlapped, you can only get the active percentage of time for GPU.
because GPU active does not represent all the GPU units are busy at that moment.
compute tasks were for compute shader.

Thanks,
Kevin


#5

Hi Kevin,

Now that PVRTune gui may not give accurate GPU load, I am using SGX544 series GPU, so is there any way where in can get GPU load of my application ?

Thanks


#6

The simple answer is NO.
We discourage developers from trying to calculate total GPU load on PowerVR, as it isn’t possible to accurately represent.
100% GPU utilization would, theoretically, mean that every module of the hardware is running at maximum utilization. In reality, the hardware pipeline is far too complex to create a coarse metric like this that accurately represents how busy the GPU is. This is primarily due to tiler, renderer and compute tasks being processed simultaneously and sharing many hardware units in their pipeline (for example, the shader engine)
We prefer for developers to think in terms of the percentage of time the tiler, renderer and compute stages of the pipeline are active, as we can generate much more accurate data for these metrics
Thanks,
Kevin


#7

Thanks Kevin for the valuable input.