Getting CPU load from PVRPerfServer on Integrity

I’m trying to get CPU load from a target device (integrity, rcar) using PVRPerfServer. I have been able to get connect to the server from PVRTune and I can get input but I can’t figure out how to get CPU load from the device. In the documentation there are mentions of command line switches to the perf server such as:

-c, --cpu-load-time-ms

but in my environment the perf server is just a static library.

How can I pass arguments to the server? Is there some way to change the configuration from PVRTune?

Thanks!

(CC @jiu )

Hi mipe,

Thanks a lot for your message, and welcome to the PowerVR Developer Forum!

PVRTune has one counter called “CPU Load”: https://docs.imgtec.com/tools-manuals/pvrtune-manual/html/pvrtune-manual/topics/counters/cpu-load.html

Are you trying to take a PVRTune recording which plots the CPU load values? In this case, you need PVRPerfServer. If you use PVRTune GUI, there is no need to do any specific setup as the GUI will take care of running PVRPerfServer with the correct settings. Alternatively, you can always take an on-device recording with PVRPerfServer command-line. If you type ./PVRPerfServer --help you should get an example command (which you will need to trim and reduce parameters to get the information you need), just remember to add --sendto=my_file_name so the results are stored locally.

Are you trying to get the CPU Load numerical values through PVRScope, locally in your device? In that case, we have a SDK sample on how to do it:
Native_SDK/examples/Vulkan/PVRScopeExample at master · powervr-graphics/Native_SDK · GitHub
Native_SDK/examples/OpenGLES/PVRScopeExample at master · powervr-graphics/Native_SDK · GitHub

Best regards,
Alejandro

Yes, that’s precisely what I’m trying to do.

Like I pointed out, I’m working with integrity and the perf server is a static library. It’s unclear to me how I could pass arguments to it.

Looks like the settings are incorrect because I do get data like framerate, GPU clock speed, memory read / write speed etc but there is no field for CPU usage and I can’t figure out how to enable it.

So the question is; how can I enable the CPU load logging? Do I need to turn on a switch in the GUI?
Or is it possible that the perf server on the target does not support CPU logging at all?

@AlejandroC sorry to directly ping you but this case is somewhat urgent. Any additional assistance would be much appreciated.

Hi mipe,

Unfortunately the CPU Load information might not be available on the device you are working with. If it is really important to get that information, you can speak with the manufacturer for a driver / firmware update provising that information in case it is available.

You can use code from our OpenGLESPVRScopeExample ( Native_SDK/examples/OpenGLES/PVRScopeExample at master · powervr-graphics/Native_SDK · GitHub ) SDK sample to exhaustively list all the available counters.

Best regards,
Alejandro