I'm having some trouble understanding the meaning of the $MaliCoreL2ReadsFragmentExternalReadBeats counter (in the context of a Mali G-76 at least). I have 3 external memory reading counters with the following values :
$MaliCoreL2ReadsFragmentExternalReadBeats * 16
$MaliCoreL2ReadsLoadStoreExternalReadBeats * 16
$MaliCoreL2ReadsTextureExternalReadBeats * 16
I can't find any reference to it in your documentation (alongside the other 2). The main reason I'm asking is that an optimization we've made reduced the remaining 2 (as we expected) but just slightly increased the first one - MaliCoreL2ReadsFragmentExternalReadBeats. The increase might just be noise (as it's insignificant) but it would be good to understand what kind of data it refers to.
Hi JPJ, Sorry for the slow documentation update - as you've noticed we've added some more counters to the Streamline template, but we're delayed on updating the docs as we're in the middle of migrating our web docs to a new backend system. Hope to return to normal service with some new docs before the end of the year. The MaliCoreL2ReadsFragment counter is the bandwidth loaded by the fragment front-end when setting up fragment workloads to be shaded. This includes:
* Draw call descriptor loads* Uniform buffer preloads* Tile list metadata reads* Tile list vertex position reads
I'd expect a little bit of variability in this counter due to changes in binning as triangles move around - the bin assignments can be quite sensitive to triangle size and their exact screen position.
Thanks Pete! No problem with that, and thanks for the clarification. That makes sense as my comparison is across a long period of time as well.