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

Shader data path utilization counters

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?

  1. min(($MaliCoreCyclesFragmentFPKBActive / $MaliCoreCyclesFragmentActive) * 100, 100)
  2. 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"?