Bug 105376 - es2gears_wayland reports 120 fps while drawing at 60 fps
Summary: es2gears_wayland reports 120 fps while drawing at 60 fps
Status: NEW
Alias: None
Product: Mesa
Classification: Unclassified
Component: Demos (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-07 07:20 UTC by Link Mauve
Modified: 2018-12-20 06:14 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Link Mauve 2018-03-07 07:20:06 UTC
es2gears_wayland is requesting two frame callbacks per frame, and then reporting a framerate double of what it is actually drawing, see this log:

[1648215.456]  -> wl_surface@6.frame(new id wl_callback@11)
[1648215.507]  -> wl_surface@6.frame(new id wl_callback@12)
[1648215.552]  -> wl_surface@6.attach(wl_buffer@14, 0, 0)  
[1648215.577]  -> wl_surface@6.damage(0, 0, 2147483647, 2147483647)
[1648215.654]  -> wl_surface@6.commit()                            
[1648226.261] wl_display@1.delete_id(11)
[1648226.318] wl_display@1.delete_id(12)
[1648226.345] wl_callback@11.done(1097662536)
[1648226.368] wl_buffer@9.release()          
[1648226.378] wl_callback@12.done(1097662536)
[1648227.256]  -> wl_surface@6.frame(new id wl_callback@12)
[1648227.327]  -> wl_surface@6.frame(new id wl_callback@11)
[1648227.345]  -> wl_surface@6.attach(wl_buffer@9, 0, 0)   
[1648227.373]  -> wl_surface@6.damage(0, 0, 2147483647, 2147483647)
[1648227.473]  -> wl_surface@6.commit()                            
[1648247.237] wl_display@1.delete_id(12)
[1648247.288] wl_display@1.delete_id(11)
[1648247.309] wl_callback@12.done(1097662553)
[1648247.341] wl_buffer@14.release()         
[1648247.356] wl_callback@11.done(1097662553)

This is apparently caused by the fix for bug 101814, see also https://gitlab.gnome.org/GNOME/mutter/issues/55
Comment 1 Daniel van Vugt 2018-03-07 07:25:49 UTC
Also seen in gnome-shell on Ubuntu 18.04:

$ es2gears_wayland
EGL_VERSION = 1.4 (DRI2)
vertex shader info:
fragment shader info:
info:
597 frames in 5.0 seconds = 119.138 FPS
600 frames in 5.0 seconds = 119.880 FPS
598 frames in 5.0 seconds = 119.481 FPS
600 frames in 5.0 seconds = 119.952 FPS
600 frames in 5.0 seconds = 119.880 FPS
600 frames in 5.0 seconds = 119.880 FPS
596 frames in 5.0 seconds = 119.105 FPS

But strangely not in weston:

$ es2gears_wayland
EGL_VERSION = 1.4 (DRI2)
vertex shader info:
fragment shader info:
info:
301 frames in 5.0 seconds = 60.176 FPS
300 frames in 5.0 seconds = 59.952 FPS
300 frames in 5.0 seconds = 59.952 FPS
300 frames in 5.0 seconds = 59.964 FPS
300 frames in 5.0 seconds = 59.928 FPS
300 frames in 5.0 seconds = 59.964 FPS
Comment 2 Daniel Stone 2018-03-07 08:43:03 UTC
One 'frame' will be requested by the EGL implementation and another by es2gears. That's fine, as neither will receive the other's events.
Comment 3 Daniel van Vugt 2018-12-20 06:14:48 UTC
Also, on a real 120Hz display, es2gears_wayland reports 240 FPS. Verified in both gnome-shell and weston.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.