[Mesa-dev] very strange intermittent frame-dropping

Luke Kenneth Casson Leighton lkcl at lkcl.net
Wed Apr 5 22:40:04 UTC 2017


On Wed, Apr 5, 2017 at 10:43 PM, Chris Wilson <chris at chris-wilson.co.uk> wrote:

>> 303 frames in 5.0 seconds = 60.424 FPS
>> 212 frames in 11.7 seconds = 18.079 FPS
>
> Overshoots by 6s.

 that's because, after the first 5 seconds, i did the fvwm2-based
"window resize" operation which triggered the "freeze".  after
probably... mmm... 2 seconds i pressed ctrl-alt-f1 then ctrl-alt-f7
all during 5 seconds which thus gives the apparent reduced framerate.

> Check dmesg for a GPU hang.

 none.

>  Attach
> /sys/class/drm/card0/error.

# cat /sys/class/drm/card0/error
no error state collected

this time i re-ran the test, but left it after triggering a "hang" for
more than 5 seconds.  the output of the framerate did *NOT* take place
until *AFTER* i had "recovered" glxgears running (with ctrl-alt-f1 /
ctrl-alt-f2)

Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
94 frames in 20.3 seconds =  4.637 FPS
302 frames in 5.0 seconds = 60.275 FPS
300 frames in 5.0 seconds = 59.986 FPS


hmmm.... i think it's time for a gdb session...

(gdb) where
#0  0x00007ffff6b49180 in __poll_nocancel ()
   from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007ffff5042150 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007ffff5043c0f in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007ffff5043d81 in xcb_wait_for_reply64 ()
   from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#4  0x00007ffff7061018 in _XReply () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#5  0x00007ffff76a88ea in ?? () from /usr/lib/x86_64-linux-gnu/libGL.so.1
#6  0x00007ffff76a8c47 in ?? () from /usr/lib/x86_64-linux-gnu/libGL.so.1
#7  0x00007ffff3a899ca in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#8  0x00007ffff3a89f01 in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#9  0x00007ffff3a75054 in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#10 0x00005555555566be in ?? ()
#11 0x0000555555555e38 in ?? ()
#12 0x00007ffff6a8b730 in __libc_start_main ()
   from /lib/x86_64-linux-gnu/libc.so.6
#13 0x000055555555646a in ?? ()
(gdb)

hmmm... where's the debug-symbols package when you need it...

let's try strace instead

oo that's interesting.  this time, when running strace, i did *NOT*
get a 100% "guaranteed" hang from resizing the window using fvwm2.
instead it took *three attempts*.

log file from strace is too large to post, it's at
http://hands.com/~lkcl/glxgears.strace.txt

l.


More information about the mesa-dev mailing list