This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

DS-5 Streamline Analyzer and non-Mali GPU profiling

I'm working with an ARM Cortex-A8 platform that is using a non-Mali based GPU. 

I would like to be able to use Streamline Analyzer for profiling and include GPU profiling data.  I have sufficient technical knowledge of the GPU (documentation and source) to know how to get all the profile data out of it.

Is there a way to adapt Streamline Analyzer to support different GPUs?  (The only way I see at the moment would be to modify the source of gator.ko and either hack the mali code to get data from the other GPU or create a new chunk of code in the kernel driver and modify the daemon accordingly.)

Thoughts?

  • Hi cphealy, Streamline can indeed be adapted to support any IP block on your target which exposes performance counters in the processor's memory map. This includes non-Mali GPUs as well as non-ARM fabric components such as interconnect, memory controllers, DMAs, etc.

    There are several ways to do this:

    1- Hack the gator kernel module to point to the location of the counters in the memory map. For example, the default gator.ko implements support for L2 cache in this way

    2- Add support for your GPU in Linux perf, and the GPU drivers, and just get gator to read the counters via a perf back-end

    3- Ask your chipset provider whether they already have support for Streamline in their drivers for internal use (which is often the case)

    Option 3 is best for obvious reasons. If that doesn't work I would recommend option 2 because it gives you support in open source tools too, so you kill two birds with a single stone.