213

I've upgraded from 4.4.0 to 4.4.8 and then 4.5.2 on Ubuntu 16.04 LTS 64-bit, and it's still happening.

At 4.5.2 it's even more frequent, and mainly in Chrome (haven't tried firefox or opera just yet). Every time I open a new web page. Any way to fix that, or is it a bug?

00:02.0 VGA compatible controller: Intel Corporation HD Graphics 5500 (rev 09)
04:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Venus XTX [Radeon HD 8890M / R9 M275X/M375X] (rev 81)

Cheers.

Mookey
  • 4,801

11 Answers11

205

After some research, I found a solution to this problem. It is working for me now.

I disabled hardware acceleration for my browser from

Settings > Advance Settings > System > uncheck the hardware acceleration

Hope this works on your machine.


I am using google-chrome-stable Version 50.0.2661.94 (64-bit) on Ubuntu 16.04

-----EDIT----

If you encounter scrolling lag and screen tear. Do as suggested by Amos Folarin in the comment below:

Go to: chrome://flags/#smooth-scrolling and Enable it.

sgiri
  • 2,355
  • 23
    I tried that, fixes the problem but makes my scrolling lag and screen tear. – Mookey May 05 '16 at 17:57
  • Actually, come to think of it, the flickering has dropped recently in the last few days to minimal. What could it be? – Mookey May 05 '16 at 17:59
  • I found the hardware acceleration option disabled, enabled it and the flickering gone. – Marware Jul 20 '16 at 08:03
  • On my DELL XPS 15 9550 I had same issue as @Mookey . When disabling hardware acceleration my chrome started to be slow like a turtle, scrolling lag and screen tearing – morhook Aug 25 '16 at 20:45
  • 21
    This really shouldn't be accepted, as it's not a solution, it's definitely a work-around. – kostrykin Oct 14 '16 at 13:56
  • 4
    This has no effect on the flickering for me. – DavidJ Oct 25 '16 at 15:08
  • 1
    This solution worked for my XPS13 9343, the flickering definitely stopped or is not noticeable. I also tried the other solution suggested here setting chrome://flags/#enable-gpu-rasterization to 'Force-enabled for all layers' but this did not work, only disabling hardware acceleration in chrome seemed to work. But agree with @theV0ID that his is not idea. – Amos Folarin Nov 10 '16 at 19:03
  • 4
    Try also enabling chrome://flags/#smooth-scrolling for smooth scrolling. I'm using XPS13 + Ubuntu16.04 works well with hardware accel option unchecked – Amos Folarin Nov 14 '16 at 09:38
  • Thank you @AmosFolarin , I edit the answer and included your tip. – sgiri Nov 14 '16 at 10:30
  • Edited chrome flags and it works for me! Thanks! – Sethen Dec 05 '16 at 16:20
  • 3
    Disabling hardware acceleration has an awful effect on battery life! – Victor Lamoine Dec 24 '16 at 14:48
  • 1
    This is actually a helpful setting when running Windows in a VirtualBox with the 3D drivers installed and enabled. Chrome was flickering a ton, and this helped immensely. Thank you! – Terrance Jan 09 '17 at 06:24
  • Problem was solved though I LOST all of my passwords saved in chrome after clicking restart button that appeared in chrome after I unchecked the option – abdul qayyum Feb 28 '17 at 17:49
  • Hi, I have 4.4.0 kernel, 58.0.3029.81 (64-bit) Chrome and Intel integrated graphics. After disable hardware acceleration flickering of all window goes off, but instead I have flickering of some parts of the page, especially on facebook. But the real problem that now slack video calls in Chrome crashes. – anber Apr 26 '17 at 06:43
  • To me it worked the other way around: I enabled hardware acceleration and then videos started playing as expected in YouTube. – Juampy NR Oct 05 '17 at 06:58
  • gah, this was annoying. thanks so much! Worked like a charm. Note, I did both of these things, but it wasn't fixed until enabling the scrolling flag in the second part of this comment – Christopher Kuttruff Apr 09 '18 at 19:19
161

I had same problem, setting GPU rasterization to 'Force-enabled for all layers' seems to be finally working:

Chrome Flags: GPU rasterization

edwinksl
  • 23,789
Gondy
  • 1,869
46

I fixed it as follows:

sudo apt-get purge xserver-xorg-video-intel

then reboot. This is because Intel drivers moved to modesetting. For more info see this comment in the Chromium bug thread.

ComBin
  • 576
  • I went the chrome flags route and then went this route instead and reset the flags to default and purged the intel stuff. So far, so good. – Sethen Dec 07 '16 at 19:10
  • thanks. I have an Intel NUC which is a few years old and has gone through a few updates. It's on 16.04.2 but your suggestion did find packages to purge. It no longer flashes (my HDMI video was flashing on and off at about 1 or 2 Hz after some recent updates; I thought it had developed a hardware failure after 8 years of service). – Tim Richardson Feb 27 '17 at 13:27
  • 1
    Perfect for Linux Mint here :) – Chris Nevill Jan 18 '18 at 16:58
  • 1
    I can confirm that this solved the overall performance issues I had on my Dell XPS 9350 + 17.10 :) – helmesjo Jan 30 '18 at 18:37
  • 1
    Dell Precision 5520 + Ubuntu 16.04 here, and I'm touching wood, because so far this seems like the solution (to both my Slack and Chrome flickering problems)! – cjauvin Mar 21 '18 at 16:52
  • 1
    Dell XPS 13 9360, Ubuntu 16.04. I removed the driver, but I did not test tearing. After rebooting Chrome started to work slowly. Also I was not able to launch Road Redemption game. So I reistalled the driver. – YKY Mar 31 '18 at 16:44
  • 1
    Yes this fixes it. The other flags are some nice sugar but main issues are solved with this one on my macbook running linux mint 18 – Walter Schreppers Apr 24 '18 at 19:23
  • 1
    The accepted answer removes flickering but causes weird artifacting. This solved it for me on Linux Mint (Ubuntu 16.04) – Sanctor May 30 '18 at 11:33
  • 1
    Joined the community to thank for this answer. Worked on debian 4.19.16-1~bpo9+1 (4.19.0-0.bpo.2-amd64). – Bertram Gilfoyle Feb 24 '19 at 11:03
  • You're welcome. – ComBin Feb 25 '19 at 12:09
37

Open a terminal and enter this command:

sudo nano /usr/share/applications/chromium-browser.desktop

and scroll down until you get to this line:

Exec= chromium-browser

Then add these two parameters

--disable-gpu-driver-bug-workarounds --enable-native-gpu-memory-buffers

Press Ctrl+O to save and Ctrl+X to exit.

Then enter this command:

sudo nano /usr/share/X11/xorg.conf.d/20-intel.conf

and add these lines

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "AccelMethod"  "sna"
   Option      "TearFree"    "true"
   Option      "DRI"    "3"
EndSection

Press Ctrl+O then Ctrl+X.

Open Chromium and write to address bar: chrome://flags/ and enter.

  • Enable-zero-copy
  • Enable Override Software Rendering List
  • Enable Display 2D List Canvas

Finally open chrome settings and click on:

  • Use hardware acceleration when available
wjandrea
  • 14,236
  • 4
  • 48
  • 98
  • 1
    Worked on my Dell XPS 15 95050 Intel® Core™ i7-6700HQ CPU @ 2.60GHz Intel® HD Graphics 530 (Skylake GT2). – Prydie Aug 23 '16 at 12:10
  • Having #enable-display-list-2d-canvas, . #enable-zero-copy and #ignore-gpu-blacklist all to ENABLED seems to have fixed the flickering with a HD Graphics 5500, intel-xorg 2.99.917. – bk138 Sep 12 '16 at 19:52
  • 1
    In my case (after trying multiple solutions) I simply enabled those flags you mentioned (zero-copy, Override Software Rendering List, Display 2D List Canvas) and it seems to have fixed it (on Intel HD Graphics). – Nahuel Sep 14 '16 at 02:04
  • ixed the flickering on my Acer-574G with intel graphics 6th gen. – Hassan Ahmed Sep 19 '16 at 17:01
  • 1
    The two command line switches (disable workarounds/ enable native gpu memory buffers) don't seem to work anymore, but creating the 20-intel.conf file worked for me! Also enabled gpu rasterization (not sure if it is important). – Lea Rosema Feb 15 '17 at 14:38
  • 2
    Just adding 20-intel.conf worked for me - didn't have to do anything else. – Vadim Peretokin Feb 16 '17 at 10:16
  • The 20-intel.conf fix works for me. The performance drop is noticeable though. – Carson Ip Feb 23 '17 at 23:22
  • Also the only solution that worked for me (tried the top two answers). I'm on a desktop with a Radeon card and so I had to edit 10-radeon.conf and made sure to change the Identifier to Radeon and driver to radeon. Also, I'm using chrome stable and so my conf file was actually named google-chrome.desktop – Jordan Speizer Dec 08 '17 at 18:49
27

None of these answers seemed to help me. What I ended up doing which seems to have fixed it (My reference was this site http://www.bang-olufsen.com/ which flickered like CRAZY and now it works smoothly) is this:

1.- Navigated to chrome://gpu/. This is what it showed:

enter image description here

2.- I tried fixing the problems one by one. In my case, enabling these flags fixed some of them: GPU rasterization, Override software rendering list. Then it showed like this:

enter image description here

3.- I edited the desktop launcher and added the parameters --disable-gpu-driver-bug-workarounds --enable-native-gpu-memory-buffers.

4.- After that, no more problems detected, everything shows as "hardware accelerated" and, more importantly, no more flickering:

enter image description here

If you add the parameters to the launcher first, the list of problems should be shorter and it'll probably be easier to figure out which flags will help you with the problems you have left.

Nahuel
  • 467
  • This is a good reference. I've used it to solve my problem with firefox, where it was simply solved by unticking "Use hardware acceleration" box in the advanced settings. – Bach Jan 05 '17 at 14:56
  • This reduced the flickering for me, but it still happens often... – addison Feb 17 '17 at 17:09
7

With Chrome Version 51.0.2704.103 (64-bit) the flags

--disable-gpu-driver-bug-workarounds --enable-native-gpu-memory-buffers

do not work anymore.

Best way we can do is step back to Chrome 50 (Version 50.0.2661.86 (64-bit)), here is an instruction how you can step back: how do I downgrade google chrome?

Important is that we put pressure on Google to fix this problem, vote for the bug in Chromium and on the google product page:

https://bugs.chromium.org/p/chromium/issues/detail?id=606152

https://productforums.google.com/forum/#!topic/chrome/CtKF2BiskT8;context-place=forum/chrome

user157697
  • 437
  • 2
  • 7
  • 13
  • Does not work for me. – ComBin Aug 10 '16 at 09:13
  • @ComBin : have you tried step back to v50 and used the flags ? However, follow the link to the chromium bug there are loads of different solution proposals to get this to work this current versions of chrome/-ium. – user157697 Aug 19 '16 at 07:17
  • i dont want v50, thanks. I am found best way to fix it, see my answer bellow. – ComBin Aug 19 '16 at 14:28
  • AHa , in the chromium bug the guys meant that this would have massive performance issues. However I will try some suggestions from the chromium bugs when I have the time, as far as I understood Chromium is only the symptom not the cause. I'll keep you updated if I find something better/other. Cheers. – user157697 Aug 20 '16 at 09:24
6
chrome://flags/ > GPU rasterization > Enable,

This finally worked for me! Found it at the bottom of this Google Form! https://productforums.google.com/forum/#!msg/chrome/CtKF2BiskT8/dLXKfU2XAQAJ

4

I think I found the solution:

flags --disable-gpu-driver-bug-workarounds --enable-native-gpu-memory-buffers and also enable-zero-copy ENABLE

    sudo nano /usr/share/X11/xorg.conf.d/20-intel.conf
    Section "Device"
       Identifier  "Intel Graphics"
       Driver      "intel"
       Option      "AccelMethod"  "sna"
       Option      "TearFree"    "true"
       Option      "DRI"    "3"
    EndSection
Hector
  • 41
  • There are some flags missing, here is my step by step: https://bugs.chromium.org/p/chromium/issues/detail?id=606152#c72 – dr0bz Jul 13 '16 at 20:32
  • I was able to fix my issue with just the Section in the 20-intel.conf file with no additional flags in chrome on bionic beaver 18.04 – Brandon Culley May 18 '18 at 15:17
2

Try loading with some GPU options disabled:

--disable-gpu-driver-bug-workarounds --enable-native-gpu-memory-buffers

After you try that you can also fiddle with some of the rendering settings in about://flags and see if anything there helps, but the bulk of my render flickers were solved by the two command line flags. If you have a launcher .desktop file add those flags to the top Exec entry before the '%U'. You can also add them to the other Exec entries to have the flags applied to all startup modes.

MattCole3
  • 121
  • 3
2

I found the present fixes do not work for current version of chrome, further things need to be changed (at least for my setup).

I can confirm this works (removes both flicker and tearing) -- with thanks to https://bugs.chromium.org/p/chromium/issues/detail?id=606152#c72

Computer: XPS13 9343 Graphics: 00:02.0 VGA compatible controller: Intel Corporation Broadwell-U Integrated Graphics (rev 09) Chrome version: Version 54.0.2840.100 (64-bit)

Settings

1) Check the error messages before and after config adjustments below

  • chrome://gpu
  • take a screenshot so you can compare after.

2) Edit(for chrome): /usr/share/applications/google-chrome.desktop or for (chromium): /usr/share/applications/chromium-browser.desktop

  • Add the flags --disable-gpu-driver-bug-workarounds --enable-native-gpu-memory-buffers
  • line should look like this: Exec=/usr/bin/google-chrome-stable --disable-gpu-driver-bug-workarounds --enable-native-gpu-memory-buffers %U

3) sudo nano /usr/share/X11/xorg.conf.d/20-intel.conf add this (you may need to create the file):

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "AccelMethod"  "sna"
   Option      "TearFree"    "true"
   Option      "DRI"    "3"
EndSection

4) Chrome flags settings: chrome://flags:

  • Enable ("zero copy rasterizer"): chrome://flags/#enable-zero-copy
  • Enable (enable display list 2d canvas): chrome://flags/#enable-display-list-2d-canvas
  • Enable ("Override software rendering list"): chrome://flags/#ignore-gpu-blacklist
  • Enable "Display list 2D canvas"): chrome://flags/#enable-display-list-2d-canvas
  • Enable (chrome flag for smooth scrolling in linux): chrome://flags/#smooth-scrolling

5) I kept the Chrome Setting> Advanced > Use Hardware Acceleration when available [keep checked]. If you unchecking this really hits performance (although does reduce flickering but not tearing), the above options worked much better for me.

6) Restart the computer.

7) Compare settings. chrome://gpu

This totally eliminated the flickering and tearing for me.

Amos Folarin
  • 1,154
1

Disabling hardware acceleration will degrade your browsers performance for the pages having animations and other processor intensive tasks.

However, if you don't have any GPU installed in your system then the approach of disabling hardware acceleration suggested by sgiri is best for you.

But I have an NVidia GPU installed in my laptop and I am using Ubuntu desktop OS. So I installed the proprietary binary driver (version 352.63). It worked for me, hope will work in your Ubuntu system too.