OpenGL (ES) 2.0 benchmark

No vsync handling.

Reported by Pierre-Hugues HUSSON on 2011-04-15
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
glmark2
High
Alexandros Frantzis

Bug Description

This code is not using any eglSwapInterval call. This is wrong since the EGL doc doesn't mention any default setting.
On Tegra2 libs, default setting is eglSwapInterval = 1, meaning wait for vsync, which is stupid for a benchmark (seriously.).
I don't know much of EGL, so I don't know where the eglSwapInterval(egl_display, 0); is supposed to be placed, but for my tests I putted it in sdlgles in SwapBuffer function.
I guess this might also be a SDL_gles bug.

Alexandros Frantzis (afrantzis) wrote :

> On Tegra2 libs, default setting is eglSwapInterval = 1, meaning wait for vsync, which is stupid for a benchmark (seriously.).

Indeed. Note, however, that none of the drivers on the platforms I have available (omap4, imx51, radeon/gallium) actually respect this (they are not locked to VSync by default and seem to ignore the eglSwapInterval() value).

In any case, we should explicitly set this to ensure correct behavior on all platforms (and comply with the standard!).

This is fixed in trunk rev. 79. Can you please validate the fix on Tegra2?

Thanks!

Changed in glmark2:
status: New → Fix Committed
importance: Undecided → High
assignee: nobody → Alexandros Frantzis (afrantzis)

I confirm it's working. (I now get a 541 score \o/)
Has your changed been pushed to "original" sdl_gles as well ?

Changed in glmark2:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers