Screen Tearing Driving me Crazy

belekai

Prominent
Nov 21, 2017
13
0
510
Hey all,

Im pretty sure my graphics card is knackered, but i thought id ask here just incase there is somthing i may have missed.

As the title says, im getting some pretty savage screen tearing, on the desktop, watching video, and even playing games. I use a dual monitor setup, one running off DVI the other HDMI.

I completely uninstalled the graphics drivers using a cleaning utility. downloaded the drivers direct from nvidia (im using a gtx 980), and did a complete fresh install. Sadly no luck.

The wierd thing is, its happening on both monitors. I have re-installed windows from scratch, replaced the cables and even tried a 3rd monitor, no luck 🙁

As a simple test, i deliberatly lowered the graphics card output to 30hz and still get screen tearing.

Like i said im pretty sure its the graphics card itself, but wanted to ask if there is anything else i can try before shelling out £400 for anew graphics card 🙁
 


Yeah in the nvidia control panel, 3d settings, i have forced VSYNC and Triple buffering as default, no luck 🙁
 


Yeah i unplugged one, rebooted with just the one monitor, same issue 🙁
 


Agreed, been using my 980 for the last couple years with no problems, just started all of a sudden.
 
This is exactly the wrong thing to do. This will make screen tearing much worse.
Screen tearing has the worst effect, when gpu outputs more fps than monitor can show.
You have to:
  • crank Hz of your monitor to max possible (that's why gaming monitors use high refresh rates like 120,144,165Hz btw);
    increase game quality settings/resolution, so fps goes lower;
    if still can't get screen tearing go away, then enable adaptive v-sync in Nvidia control panel.
 

The idea was to force the graphics card to only output 30hz while on a 60hz monitor, not permininetly, just as a test. Even though the GPU was only outputting 30fps, the tearing was still aparent on a 60hz monitor. Which is why i think the graphics card may have had its day.

 
Ok so after farting about for days trying to resolve this, it turns out the solution was really simple.

I am using Windows 10 64bit LTSB, which has certain features omitted (hate bloatware). One of which was the Desktop Windows Manager service. For some reason it's not included in the LTSB, personally, I think its essential but either way lol.

From what I understand the desktop windows manage (dwm.exe) is the backbone of what powered aero, which in turn controlled the vsync for desktops and applications, with it disabled, screen tearing is rife, even in games, regardless of your settings. This explains that why, even after a full OS re-install, the issue was still there.

Unfortunately, it cannot be enabled in the services panel, because it simply doesn't exist, despite the exe file being present in win32.

Even through the command prompt, it wouldn't re-enable. In the end, I found a useful reg script online that forces the service to re-enable. Just pop it into notepad and save it as anything.reg

Code:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\UxSms]
"DisplayName"="@%SystemRoot%\\system32\\dwm.exe,-2000"
"Group"="UIGroup"
"ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
  74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\
  00,76,00,63,00,68,00,6f,00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,\
  6b,00,20,00,4c,00,6f,00,63,00,61,00,6c,00,53,00,79,00,73,00,74,00,65,00,6d,\
  00,4e,00,65,00,74,00,77,00,6f,00,72,00,6b,00,52,00,65,00,73,00,74,00,72,00,\
  69,00,63,00,74,00,65,00,64,00,00,00
"Description"="@%SystemRoot%\\system32\\dwm.exe,-2001"
"ObjectName"="localSystem"
"ErrorControl"=dword:00000001
"Start"=dword:00000002
"Type"=dword:00000020
"ServiceSidType"=dword:00000001
"RequiredPrivileges"=hex(7):53,00,65,00,41,00,73,00,73,00,69,00,67,00,6e,00,50,\
  00,72,00,69,00,6d,00,61,00,72,00,79,00,54,00,6f,00,6b,00,65,00,6e,00,50,00,\
  72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,43,00,72,\
  00,65,00,61,00,74,00,65,00,47,00,6c,00,6f,00,62,00,61,00,6c,00,50,00,72,00,\
  69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,49,00,6e,00,63,\
  00,72,00,65,00,61,00,73,00,65,00,51,00,75,00,6f,00,74,00,61,00,50,00,72,00,\
  69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,53,00,65,00,63,\
  00,75,00,72,00,69,00,74,00,79,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,\
  67,00,65,00,00,00,53,00,65,00,54,00,63,00,62,00,50,00,72,00,69,00,76,00,69,\
  00,6c,00,65,00,67,00,65,00,00,00,00,00
"FailureActions"=hex:84,03,00,00,00,00,00,00,00,00,00,00,03,00,00,00,14,00,00,\
  00,01,00,00,00,c0,d4,01,00,01,00,00,00,e0,93,04,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\UxSms\Parameters]
"ServiceDll"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,\
  00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\
  75,00,78,00,73,00,6d,00,73,00,2e,00,64,00,6c,00,6c,00,00,00
"ServiceDllUnloadOnStop"=dword:00000001
"ServiceMain"="ServiceMain"

Run the reg file, reboot, and hey presto the service is running, silky smooth video and gaming.

This was a very weird issue, but it comes down to me using the LTSB version of windows, While useful, it's not without its issues.

Anyway, i hope this helps anyone else experiencing the same problem. Just goes to show, some software issues can easily be mistaken for hardware faults :)