Hi ,
I had meet a question that confuse me. I captured DS-5 Streamline data SwapBuffer of GLBenchMark .This test just refresh different color per frame.So I think it should be has the same Quads rasterized with screen size. I think it should be calculate that this:
( Quads rasterized )*4 / (screen width * screen height ) = 1( around) . But the data I captured was not as I thought . App should rasterize once , and to display it surfaceflinger will rasterize once again .I captured data on Mali 400(screen size 480*854) and Mali 720(screen size : 1080*1920 ) ,the result is same on rasterization. Here is the figures. Can you help me to figure it out .
Thanks !
Mali 720( two pp):
Quad Rasterized : 259559*4*2 from app calls opengl to surfaceflinger display it
Mali 400: ( 54802+ 54786) *4 from app calls opengl to surfaceflinger display it
Mali 720 : (259559*4) * 2 / (1080*1920) = 1.001385031
Mali 400 : (54802+ 54786) * 4 / (480 *854 ) = 1.069359875
So ,it should be 2 around . Beacuse App call opengl es call will cause once rasterized , and surface-flinger will call GPU to do composition ,so it also needs once rasterized .
Also worth noting that the default "dedicated hardware block" on most devices is the display controller which normally has multi-layer support, so there may be no actual need to composite anything into a flattened buffer in memory.