Dear ARM and All,
I am writing a OpenGLES2.0 benchmark application for ARM MALI 400.
the code snippet is like below,
I am seeing the first frame is completing in lesser time than the next frames, and some time the frame time from one frame to another is huge difference.
Why this behavior is observed?
Please help me in measuring the frame time correctly.
------------------------------------------------------------------------------------------------
repeat for 100 frames
Time_elapsed_in_one_Frame =0x00;
frameTimer.restart();
glDrawElements()
glFinish();
Time_elapsed_in_one_Frame = frameTimer.elapsed();
Thanks,
Ravinder Are
If you are just looping around that code snippet then the reason is that you're not actually timing the same workload each time - you are forcing the GPU to append rendering on top of the previous iteration, which isn't what a real application will generally do.
Try this:
Time_elapsed_in_one_Frame = 0x00; frameTimer.restart(); glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT ) glDrawElements() glFinish(); Time_elapsed_in_one_Frame = frameTimer.elapsed();
HTH,
Pete