Fixing Windows / Screen Tearing on Intel Graphic Card - Linux
I had some mild / serious screen and window tearing problems when moving windows, scrolling through the browser and the general KDE Plasma UI could be a bit laggy. The problem was reduced if I switched my rendering backend from OpenGL 2.0((Hardware rendering – the default) to Xrender (Software rendering).
The system is a work laptop – a Thinkpad E550-. It comes with an Intel Broadwell Chip. Running lspci -c video
spit out this following:
*-display
description: VGA compatible controller
product: HD Graphics 5500
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:46 memory:f0000000-f0ffffff memory:c0000000-dfffffff ioport:5000(size=64)
*-display UNCLAIMED
description: Display controller
product: Opal XT [Radeon R7 M265]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:05:00.0
version: 00
width: 64 bits
clock: 33MHz
capabilities: bus_master cap_list
configuration: latency=0
resources: memory:e0000000-efffffff memory:f1100000-f113ffff ioport:3000(size=256) memory:f1140000-f115ffff
WARNING: output may be incomplete or inaccurate, you should run this program as super-user.
At first I wrongly thought the laptop was a hybrid with dual graphic card. But the Radeon graphics part of the lspci output can be ignored. The problem I was having with screen tearing and UI stutter was due to “TearFree” being disabled on the intel driver. Enabling it fixed the problem for me.
To do that I simply:
-
- Created a xorg.conf.d directory in /etc/X11/
sudo mkdir /etc/X11/xorg.conf.d
- Next I created a new file in /etx/X11/xorg.conf.d/ named 20-intel.conf and populate it with below:
Section "Device"
Identifier "Intel Graphics"
Driver "Intel"
Option "TearFree" "true"
EndSection
Hence vim /etc/X11/xorg.conf.d/20-intel.conf would read
Section "Device"
Identifier "Intel Graphics"
Driver "Intel"
Option "TearFree" "true"
EndSection - Reboot and Tearing was gone for good, System runs like liquid :).
- Created a xorg.conf.d directory in /etc/X11/
This approach worked for KDE-NEON based on Ubuntu 16.04 LTS with Kernel 4.4.0-83-generic on a Thinkpad E550 with Intel HD Graphics 5500