We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi, i'm using streamline to profiler our game's gpu performance. My device is Mali-G77MC9, so i followed this guide: mali-g77-counters.In "Shader data path utilization" section, i found the "Fragment FPK buffer active percentage" expression gives a high value
Fragment FPK buffer active percentage: 92%
This expression defines the percentage of cycles where the forward pixel kill (FPK) quad buffer, before the execution core, contains at least one quad. I assume we should keep this percentage as low as possible? Because it indicates we took a lot of shader core power to compute useless Quads. Is this correct?
min(($MaliCoreCyclesFragmentFPKBActive / $MaliCoreCyclesFragmentActive) * 100, 100)
min((24.3/26.3)*100, 100)=92%
Execution core utilization:98%
min(($MaliCoreCyclesExecutionCoreActive / $MaliGPUCyclesGPUActive) * 100, 100)
min((29.6/30.7)*100,100)=98%
Execution core utilization looks good, because we did have a lot of shader instructions to run.
But i don't understand why Fragment FPK buffer active percentage is so high(92%).
Dose this mean our content takes too much time in FPK Buffer section? Because FPK kills a lot of Quads?
And geometry culling expressions did show there's a lot of geometries are killed by hardware culling unit.
Total input primitives:923K
Total culled primitives:620K
Visible primitives after culling:33%
Facing or XY plane test cull rate:42%
Z plane test cull rate:16%
Sample test cull rate:32%
Does this mean i should do something to lower geometry culling rate, is this related to "Fragment FPK buffer active percentage"?
What should i do to lower "Fragment FPK buffer active percentage"?
Thank you for your detailed answer.