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

Measuring the ARM MALI 400 GPU per frame Time

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

Parents
  • Why this behavior is observed?

    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

Reply
  • Why this behavior is observed?

    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

Children
No data