Our i.MX6 Qual. face a lag(but CPU loading is under 10%) when rendering 2 EGL on 2 screen (720p + 720p), all use the GLSL to draw full-screen, from a video texture decoded by VPU.
the application on 1st screen is like "3D video" which may be a heavy loading, but it works well smoothly when the 2nd screen doesn't run.
the lag start to appear when the 2nd application(to do a simple CSC + scaling + rotation 90 deg. into a video texture) runs, we're not sure if bottleneck is GC2000 or memory bandwidth, but we think it's about GC2000 because we found the 1st is still smooth when we decode another 720p on 2nd screen instead of the original 2nd application(GLSL).
we think the 2nd app seems to be simple enough to do by GC320 /IPU.
but when we test the DirectFB example("df_andi", we think it's a GC320 utilized app) on 2nd screen, the lag is re-back. We're confused if the GC320 work will inflame the busy GPU3D so that we only hope the IPU ?
BTW, we see the new "G2D" on BSP 4_1_0, it seems just for more friendly use to the 2D API (gco_xxx), so it still utilize the GC320 as "df_andi" does?
which backend below test is based on, android? Dfb? X? or simple frame buffer? Different backend may have different result.
What’s the resolution of the video and screen, all 720p?
I’m not sure how heavy loading the first screen “3D video” can generate. Base on the description, it’s more like a memory bandwidth issue.
Can you try off-screen render?