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

SimpleProject (Simple OpenGL ES 2.0 Example) expected performance?

Note: This was originally posted on 5th September 2012 at http://forums.arm.com

Hi,

I am running the SimpleProject sample code posted here (http://www.malidevel...-code/index.php), on a Origen development board (samsung Exynos 4210) that has MALI400. It's a linux kernel version 2.6.35-7. The driver version is r3p0. Also using DS-5 CE Streamline.

The program simply draws a triangle repeatedly as fast as it can, but the performance is rather low.

I am seeing 5 FPS (roughtly 200ms per frame) when I capture Steramline data. Without the streamline, it is 189ms per frame. (time interval between the main loop iteration). Most of the time (over 99%) is spent in eglSwapBuffers() function.



The timeline view doesn't really tell me much. It has very low GPU Vertex/Fragment Activity, which perfectly makes sense. But why wouldn't it go faster? Is this the SimpleProject sample application? or would it be somewhere else in the stack?

Thanks,

Min
  • Note: This was originally posted on 5th September 2012 at http://forums.arm.com

    Hi mkjeong,

    Thank you for your question. I have a few questions to ask in order to be able to help you:

    1. Are you using a linux or android filesystem?
    2. Are you outputting to HDMI or using an LCD display supplied with the board?
    3. Did you compile the kernel/userspace mali drivers yourself?

    Typically we see issues like this when using single buffering, and so in the mean time you could check that you are in-fact using double buffering.

    Thanks
    Chris
  • Note: This was originally posted on 5th September 2012 at http://forums.arm.com

    Hi Chris,

    1. It's a linux filesystem. Ubuntu Oneiric I created with rootstock. The kernel is from the insignal git repo.
    2. HDMI. It is connected to 1920x1200 display, but only 1/6 of the monitor is filled.
    3. Yes. I followed the Mali DDK Integration guide.



    Hi mkjeong,

    Thank you for your question. I have a few questions to ask in order to be able to help you:

    1. Are you using a linux or android filesystem?
    2. Are you outputting to HDMI or using an LCD display supplied with the board?
    3. Did you compile the kernel/userspace mali drivers yourself?

    Typically we see issues like this when using single buffering, and so in the mean time you could check that you are in-fact using double buffering.

    Thanks
    Chris
  • Note: This was originally posted on 5th September 2012 at http://forums.arm.com

    How do I check I am using double buffering? I don't remember me configuring that knob during the bringup. Is it in the kernel? kernel driver? user level driver? or application?

    Thanks for your help.

    Min


    Hi mkjeong,

    Thank you for your question. I have a few questions to ask in order to be able to help you:

    1. Are you using a linux or android filesystem?
    2. Are you outputting to HDMI or using an LCD display supplied with the board?
    3. Did you compile the kernel/userspace mali drivers yourself?

    Typically we see issues like this when using single buffering, and so in the mean time you could check that you are in-fact using double buffering.

    Thanks
    Chris
  • Note: This was originally posted on 5th September 2012 at http://forums.arm.com

    Hi mkjeong,

    Double buffering is enabled in drivers/media/video/samsung/tvout/s5p_tvout_fb.c, in the function s5p_tvout_fb_init_fbinfo. Make sure the line "fix->ypanstep" is set to 1 and not 0. Also it is just past 6pm here so you might not receive any further reply until tomorrow morning UK time.

    Also, I have private messaged you, in case you didn't spot it. If you could reply to that then I can escalate this issue.

    Thanks
    Chris

    How do I check I am using double buffering? I don't remember me configuring that knob during the bringup. Is it in the kernel? kernel driver? user level driver? or application?

    Thanks for your help.

    Min


  • Note: This was originally posted on 12th September 2012 at http://forums.arm.com

    Wow. Only if I tried this before jumping into the kernel driver rebuilding as we discussed in the private messages...
    Yes. This fixed the issue! Now the triangle is rendered 560 times per second. :-)

    Thanks,

    Min

    Hi mkjeong,

    Double buffering is enabled in drivers/media/video/samsung/tvout/s5p_tvout_fb.c, in the function s5p_tvout_fb_init_fbinfo. Make sure the line "fix->ypanstep" is set to 1 and not 0. Also it is just past 6pm here so you might not receive any further reply until tomorrow morning UK time.

    Also, I have private messaged you, in case you didn't spot it. If you could reply to that then I can escalate this issue.

    Thanks
    Chris