I recently started using a second monitor driven by a secondary GPU and have experienced very strange screen tearing issues while both of my displays are activated. I have so far confirmed that Vsync does not fix the issue, and in fact makes the tearing slightly worse than with Vsync disabled. Both monitors individually function correctly, regardless of which gpu they're connected to and regardless of refresh rate, as long as only one display is activated via the display manager. When both displays are activated, the display listed as 2nd in the display manager/the one driven by my GTX 1650 will experience the tearing issue. My other display, the one driven by a GT 1030, never experiences the tearing problem.
Since both displays work independently regardless of what drives them, I don't think this is due to a problem with either GPU's hardware. Prior to discovering this I had purged/installed via terminal my display drivers to fix a different problem, which I performed a second time to be certain that my driver installation was not to blame.
My best guesses so far:
- Nvidia's Linux drivers struggle with two displays for some reason
- Something about the way Linux itself handles multiple displays is causing this
The display with tearing may also be skipping/dropping frames, which I am personally less sure of since I've never had that problem before.
Also, I used this tool (https://github.com/Nixola/VRRTest) to check for tearing on both displays.