Hi guys:
I'm an developing an opencl application on MTK P60(Mali G72 mp3). But i have met some problems.
The application has been run successfully on snapdragon 660(GPU Adreno 512), the performance was about 10ms. But when I run it on Mali G72 mp3, it should cost 60ms! When I check the gpu_utilization, it's almost 100 percent.
Firstly, I couldn't find any specification about the flops performance with the Mali G72.(Adreno 512 GPU flops performance: 255 Gflops)
Secondly, according to benchmarks, performance of G72 mp3 should close to the Adreno 512. I can't find out why it should perform so bad on G72 mp3.
Welcome to talk about this. :)
It is possibly related to DVFS (dynamic voltage and frequency scaling). When idle the device will run at a low power state; it may take some time for the CPU, GPU, and memory system to select and stabilize on a frequency when new workloads start running and increase demand. With more things running - such as the camera - it may more rapidly selected a higher frequency for heavily loaded components.
Can I change DVFS mode directly? I remember that I can set DVFS to "power save" or "performance" to control Adreno GPU. Is there similar way to control Mali GPU?
The DVFS implementation isn't provided by Arm - it's implemented by the chipset manufacturer, so you'd have to check with them, sorry.
Kind regards, Pete