Bug 91800 - [bisected] flickering in The Talos Principle
Summary: [bisected] flickering in The Talos Principle
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Chris Wilson
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-08-29 14:40 UTC by Grazvydas Ignotas
Modified: 2016-06-21 07:45 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Xorg.log (20.70 KB, text/plain)
2015-08-29 14:40 UTC, Grazvydas Ignotas
no flags Details

Description Grazvydas Ignotas 2015-08-29 14:40:32 UTC
Created attachment 117983 [details]
Xorg.log

CPU: Intel(R) Core(TM) i5-6600K CPU @ 3.50GHz
OS: Ubuntu 14.04
kernel: 4.2.0-rc8+
mesa: git master (c8a61ea4fbcb)
libdrm: git 56d8dd6a9c0
xf86-video-intel: git master (300319e2044c)
other components should be stock Ubuntu 14.04 (desktop environment: Xfce 4.10)

When playing The Talos Principle in windowed mode, there is severe flickering/stuttering. I've noticed that xf86-video-intel from stock Ubuntu 14.04 has no such problem, so ran bisect which resulted in:

commit 72d208a7f2f0e8f2d93483e535154f34a8a26d81
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Thu Mar 5 12:26:15 2015 +0000

    sna/dri2: Perform swap elision on windows for swap-interval==0

The commit doesn't revert, but checking out, building and installing 72d208a7f2^ gives properly working game after restarting Xorg.
Comment 1 Chris Wilson 2015-08-30 10:54:27 UTC
(Still waiting to complete a download of TTP)

The usual reason for this is that the composited copy is delayed past the next vblank and so the assumption that the back buffer is safe to use again is false (and because the rendering by mesa is split across multiple batches in this case the compositor samples the back buffer in the middle of the rendering) or that the rendering just takes too long. The right fix is to be able to pass the buffer from the game to the compositor and only return it once the compositor has finished with it, alas that dream remains a long way off.

What's the game setup you are using, or does it simply always happen once windowed?

And of course there may be other reasons behind the flicker hence downloading a copy myself to investigate.
Comment 2 Chris Wilson 2015-08-30 13:14:38 UTC
There's a handsfree benchmark/demo under "extras". Does that flicker? What settings?

Messing around with a Broadwell-U with cinnamon is not flickering in a windowed run of the benchmarks (with framerates varying between 6 and 60fps, ugh).
Comment 3 Grazvydas Ignotas 2015-08-30 15:18:02 UTC
OK it does depend heavily on resolution and settings. Playing along with them suggests that I originally selected the worst combination by chance as most changes make the issue go away.

The "bad" settings are:
resolution: 1440x900
graphics options -> performance: every setting on medium, max fps unlimited

The issue is most visible on the "attract mode" - start the game, hit Esc on the company logos and wait for it to show several different scenes. The first scene (a wall with some drawings) is flickering and stuttering. The second one (architecture an a small pool) is stuttering even more but flickering less (fps counter shows ~50 but the framerate feels like it's below 10fps). The third scene with a statue is ok, and 4th one with a pool stutters heavily again.

It does seem to be timing related and if your machine is rendering faster/slower I suspect you might not hit it, but moving to 7ae299be60 clearly solves the issue for me with the "bad" settings.
Comment 4 Grazvydas Ignotas 2016-06-20 23:08:17 UTC
I haven't seen this for a long while, so I'll just be optimistic and assume it somehow got fixed.
Comment 5 Jani Nikula 2016-06-21 07:45:47 UTC
Thanks for the follow-up!


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.