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.

5

11 Answers 11

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.

16
  • 23
    I tried that, fixes the problem but makes my scrolling lag and screen tear.
    – Mookey
    May 5, 2016 at 17:57
  • 21
    This really shouldn't be accepted, as it's not a solution, it's definitely a work-around.
    – kostrykin
    Oct 14, 2016 at 13:56
  • 4
    This has no effect on the flickering for me.
    – DavidJ
    Oct 25, 2016 at 15:08
  • 4
    Try also enabling chrome://flags/#smooth-scrolling for smooth scrolling. I'm using XPS13 + Ubuntu16.04 works well with hardware accel option unchecked Nov 14, 2016 at 9:38
  • 3
    Disabling hardware acceleration has an awful effect on battery life! Dec 24, 2016 at 14:48
161

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

Chrome Flags: GPU rasterization

10
  • 28
    quick link: chrome://flags/#enable-gpu-rasterization
    – JohannesNE
    Sep 4, 2016 at 15:35
  • 1
    worked for me too. Sep 5, 2016 at 0:39
  • 2
    It stopped working, the flickering is back, I think after upgrading to Chrome Version 53.0.2785.92 (64-bit)
    – Nick
    Sep 9, 2016 at 7:28
  • 5
    This drastically reduces flickering, but it is still there in Google Inbox, for instance (currently the only place where I see it).
    – TiGR
    Sep 22, 2016 at 8:39
  • 2
    Works, but now only the left top corner of some images is being display. What did it for me was chrome://flags/#ignore-gpu-blacklist Nov 27, 2016 at 3:45
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.

10
  • 1
    Perfect for Linux Mint here :) Jan 18, 2018 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, 2018 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, 2018 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, 2018 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 Apr 24, 2018 at 19:23
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
8
  • 1
    Worked on my Dell XPS 15 95050 Intel® Core™ i7-6700HQ CPU @ 2.60GHz Intel® HD Graphics 530 (Skylake GT2).
    – Prydie
    Aug 23, 2016 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, 2016 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, 2016 at 2:04
  • 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, 2017 at 14:38
  • 2
    Just adding 20-intel.conf worked for me - didn't have to do anything else. Feb 16, 2017 at 10:16
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.

2
  • 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 5, 2017 at 14:56
  • This reduced the flickering for me, but it still happens often...
    – addison
    Feb 17, 2017 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

4
  • Does not work for me.
    – ComBin
    Aug 10, 2016 at 9: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, 2016 at 7:17
  • i dont want v50, thanks. I am found best way to fix it, see my answer bellow.
    – ComBin
    Aug 19, 2016 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, 2016 at 9: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
2
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.

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.

1
  • Actually, This could be answer.
    – pylover
    Apr 8, 2017 at 19:45
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.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .