Chrome causing weird flickering since upgrade to 85.0.4183.83
Solution 1
This issue is fixed in Chrome 86. Please remove workarounds suggested in the other answers especially --use-gl=desktop
and --use-cmd-decoder=validating
. What those workarounds do is revert to a deprecated renderer. Continued use of that renderer would reduce testing we get from the new more versatile renderer.
Since enabling Vulkan was also suggested as a workaround, I'm personally glad you are trying it out, but beware that the Vulkan implementation is not yet widely tested and isn't considered ready for users. If you do continue using Vulkan, please file bugs under https://crbug.com/new.
Also, to prevent such issues in the future, please consider using (or occasionally trying out) Chrome Beta. The issues there can be fixed in the same version and before reaching the wider audience. To install Chrome Beta: sudo apt install google-chrome-beta
.
Cheers!
Solution 2
In my case, I go to chrome://flags/
Then enable:
#ignore-gpu-blacklist
#enable-vulkan
I don't know if there will be any problems later, but it works for me now.
Solution 3
I raised a bug ticket for this:
https://bugs.chromium.org/p/chromium/issues/detail?id=1122224#c14
There is already a workaround:
Run with --use-gl=desktop
or --use-cmd-decoder=validating
Btw unrelated to this problem, I see your system is using 'ati,fbdev' drivers and DRM 2.45
AFAIK your card should be using either amdgpu (note: the open source driver is called amdgpu, the closed source driver is called amdgpu-pro) or radeonsi, thus enabling DRM 3.x and you should see improved overall graphics performance. The ati driver is a really, really old one.
Solution 4
I disabled hardware acceleration and it works. Settings > Advance Settings > System > uncheck the hardware acceleration
Solution 5
Problems with Chrome browser after suspending the computer on Ubuntu 20.04 seems to be related and the suggested workaround in tiangolo's answer worked for me:
You can kill just the browser's GPU process
Open the Task Manager:
- Hit Shift+Esc (as pointed out by @NYCeyes in the comments).
- Or alternatively, go to the Chrome main menu (3 dots on the top right corner) → More Tools → Task Manager.
Sort by process Task name.
Find the process called GPU Process.
Click on End process.
That will "clean" all the glitchy image noise. And Chrome will immediately create a new GPU process automatically.
Note: You can automatize the process, check Andrew Bruce's answer putting these steps in a script that runs automatically.
I assume the problem is something like the GPU process using memory assuming it has the old state as before the sleep cycle, but it just has some default random noise from the default state. So I imagine Ubuntu doesn't save and restore GPU memory on a sleep cycle (I don't think it should) but the Chrome process doesn't detect that. And by killing the process it "frees" that GPU memory and then Chrome creates a new process that re-generates any needed GPU memory state (that's instant).
oliverguenther
Updated on September 18, 2022Comments
-
oliverguenther almost 2 years
Since updating to Google Chrome 85.0.4183.83 (Official build) on my Ubuntu 20.04.1 machine, Chrome is exhibiting some weird flickering. Especially in the top left corner, chunks of pixels are showing on keyboard input or mouse movements. The following GIF I just recorded on this page while typing this question.
Is there any permanent fix for this behavior? It seems that disabling hardware acceleration in the settings is a workaround for this.
I couldn't find any bug reports on their issue tracker.
Graphics output of inxi:
Graphics: Device-1: Advanced Micro Devices [AMD/ATI] Hawaii PRO [Radeon R9 290/390] vendor: ASUSTeK driver: radeon v: kernel bus ID: 01:00.0 chip ID: 1002:67b1 Display: x11 server: X.Org 1.20.8 driver: ati,fbdev unloaded: modesetting,radeon,vesa compositor: gnome-shell resolution: 2560x1440~60Hz, 1920x1200~60Hz OpenGL: renderer: AMD HAWAII (DRM 2.50.0 5.4.0-42-generic LLVM 10.0.0) v: 4.5 Mesa 20.0.8 direct render: Yes
Output from chrome://gpu
Full output: https://pastebin.com/Lkbe8FuV
-
DrifterGuy almost 4 yearsThis workaround worked just fine! Would you mind sharing its reference? Is there a simpler way to launch
google-chrome --use-gl=desktop
without typing it on terminal? Maybe using achrome://flags/
? Or adding options to Ubuntu's Chrome icon? -
Matias N Goldberg almost 4 yearsI just edited the Chrome launcher in the Menu Editor to add "--use-gl=desktop". The "Menu Editor" may depend on which distro/desktop-environment you're running; but basically editing a launcher via UI is something you can easily look up online. alacarte, menulibre are tools designed for that (I use menulibre)
-
oliverguenther almost 4 yearsThanks for the workaround and unrelated hint. I did not modify the drivers since 20.04.1 so will take another look at that.
-
Neal Fultz almost 4 yearsI am having this problem using
amdgpu
, and the workaround (--use-gl=desktop
) also worked. Thanks much. -
lzap almost 4 yearsA tutorial how to edit Gnome application specification for Chrome in Linux: lukas.zapletalovi.com/2020/09/…
-
Dark Templar almost 4 yearsWorked for me. I Will report back in the next couple of days if it seizes to work.
-
mchid almost 4 yearsIt might help to install the vulkan packages as well. You need to enable the Universe repository
sudo add-apt-repository universe
then update the package listsudo apt update
and then install the following packagessudo apt install libvulkan1 mesa-vulkan-drivers vulkan-utils
-
oliverguenther almost 4 yearsThis worked for me as well, together with the hint of Matias to fix my drivers in the first place. Thanks!
-
Dark Templar almost 4 yearsIt worked for me, but made chrome very slow, especially when there are many tabs opened, i.e. 20+.
-
Shahbaz almost 4 yearsChromium dev here (ANGLE actually, but close). I strongly suggest NOT reverting to the validating command decoder. This bug wasn't caught because there aren't enough Beta users on Linux to test the change away from the validating command decoder :( Adding this flag only reduces the testing we can possibly have. A workaround for a mesa bug (that caused this issue) has been merged in the next version of Chrome, so in the very least, please try and remember to remove these flags when that reaches Stable. My suggestion however would be to temporarily switch to Beta.
-
Shahbaz almost 4 years@DarkTemplar, apparently Chrome on Vulkan is slow on amdvlk (but not radv). See bugs.chromium.org/p/chromium/issues/detail?id=1122224#c44 Note that the Vulkan implementation is somewhat new, and hasn't had enough testing for all the driver issues to be worked around. I'm actually glad you are trying Chrome on Vulkan out (and please do file bugs), but please again bear in mind that this is not exactly ready for users.
-
Homero Esmeraldo almost 4 years@Shahbaz when should we expect that to be? And how do we switch to Beta?
-
Shahbaz almost 4 years@HomeroEsmeraldo, according to the release calendar (chromium.org/developers/calendar), Chrome 86 should have already been released on Oct 6 (I
sudo apt update; sudo apt upgrade
right now and can confirm that's the case). If you feel like trying out beta (which is much appreciated),sudo apt install google-chrome-beta
. -
avrono over 3 yearsI tried the above and now my Chrome is very slow, especially with video. Also still exhibits strange flickering at times.
-
Han Shen over 3 yearsThanks. However, I have Chromium Version 88.0.4288.0, and I can see the problem is not fixed.
-
Shahbaz over 3 years@HanShen, might be something else. Please open a new bug. Don't forget to attach the contents of your chrome://gpu, and some video/screenshot of what the issue looks like.
-
Zsolt Katona over 3 yearsThe first one seems to have been renamed to "#ignore-gpu-blocklist".
-
matreshkin over 3 yearsFor me it causes another problem when text is not drawn at all
-
Johan over 3 years@Shahbaz do you have a reference to the Bug report or pull request?
-
Shahbaz over 3 years@Johan, the bug is right there in this answer :)
-
Johan over 3 years@ShahbazI'm going blink or crazy or both. Thank you, of course it it.
-
Shahbaz over 3 yearsThis issue should be fixed per this change. Please try it on the latest Chrome version. If the issue is still there, please try Chrome Beta as well. If the issue is not fixed in Beta, by all means please open a new issue!