in mobile studio Streamline data,I found that $MaliRayTracingIntersectionsOpaqueTriangleHits and $MaliRayTracingIntersectionsRayMisses represent the number of hits and misses that the triangle intersects with the ray.
and $MaliRayTracingTriangleBatchesTested represents the time when the triangle intersection test is.
There are no transparent objects in the scene. And the firstHit is not set.
So I understand that the sum of $MaliRayTracingIntersectionsOpaqueTriangleHits and $MaliRayTracingIntersectionsRayMisses should be equal to $MaliRayTracingTriangleBatches * 16. However, the actual situation is not completely consistent, how to understand the relationship between these items?
Batches can contain idle lanes due to divergence, which will count as neither a hit nor a miss.
If divergence exists, there should be no "$MaliRayTracingTriangleBatches x 16 < $MaliRayTracingIntersectionsOpaqueTriangleHits + $MaliRayTracingIntersectionsRayMisses" scenario?
I had a test where only 1 square was left in the scene, consisting of 2 triangles, and the light was evenly directed towards the square.The $MaliRayTracingTriangleBatches*16 I ended up with was much smaller than $MaliRayTracingIntersectionsOpaqueTriangleHits + $MaliRayTracingIntersectionsRayMisses. What could have caused this?
Checked with the hardware team, and "batches" can contain more than one triangle that needs testing. For your example with two triangles a single batch likely contains both triangles.
Because batch size is variable there isn't a consistent relationship between batch size and the other counters. $MaliRayTracingCyclesTriangleTesterActive should be closer to what you want, but will include stall cycles that the Hit/Miss counters do not.
So we can't compare $MaliRayTracingTriangleBatches with other items, because this attribute is an independent calculation rule, and a count of this attribute may actually involve intersections with multiple triangles? Is this principle easy to explain?
In addition, the $MaliRayTracingCyclesTriangleTesterActive attribute you mentioned, I don't see it in the configuration options, this should be the number of counters, right? But I want to know the number of intersections of triangles and boxes, can you convert them from this attribute?
greenhander said:So we can't compare $MaliRayTracingTriangleBatches with other items,
Correct.
greenhander said:the $MaliRayTracingCyclesTriangleTesterActive attribute you mentioned, I don't see it in the configuration options
Should be called "Ray tracing triangle tester issue cycles". There is a similar counter for the box testers.
greenhander said:ut I want to know the number of intersections of triangles and boxes, can you convert them from this attribute?
Total number of triangle intersections should be the sum of $MaliRayTracingIntersectionsNonOpaqueTriangleHits, $MaliRayTracingIntersectionsOpaqueTriangleHits, $MaliRayTracingIntersectionsRayMisses.
Can't see a way to get total number of ray-box intersections from from the counters.
OK, thank you very much!