• AbstractOS
  • Eyestrain when switching from Windows to Linux

A little update.

I've had some time over the last week to mess around again in Linux testing some more things with the Nvidia proprietary driver:

  • Tried different monitor overdrive settings - No difference
  • Tried the full Nvidia pipelining - No difference
  • Turned on full DRM debugging with kernel parameter drm.debug = 0x1ff - No errors/warnings or other messages that looked out of the ordinary
  • Enabled DRM KMS for the Nvidia proprietary driver, and had the Nvidia kernel modules load as early as possible in the initramfs - No difference
  • Made sure my microcode updates were applied, and confirmed they were being loaded by looking at the kernel logs. Then I tried disabling any sort of microcode and mitigations with kernel parameters mitigations=off dis_ucode_ldr - No difference
  • Tried switching from RGB output to YCbCr444 - No difference

I then decided to go dig out my old PC I built from 2007 (Q6600 quad core, ATI 3870's in Crossfire) and install Linux on it. My current "new" PC I've been testing with is a build from 2015 (4790k, GTX 970 SLI)...

HUGE difference. Everything is so much smoother. I noticed immediately how moving my mouse cursor around felt as smooth as my new computer did on Windows. Same with moving dialogs and windows around. And NO eyestrain. Checking the display settings with xrandr shows dithering is off by default on these old ATI 3870 cards.

So something with my 2015 system just does not sit well with Linux apparently. Whether that's just Nvidia being as bad as a lot of people have said it was with Linux, or some other component (MB, CPU, etc) that just doesn't work well in Linux. I was going to take out one of my 3870's and throw it in my 2015 rig to rule out another component, but I didn't want to tear apart my new PC and have to re-wire everything I did so nicely back when I built it.

So at this point I'm very much thinking of just using Windows 7 for the remainder of the year until Ryzen 4000 and Big Navi, and then building a new PC and switching to Linux (will have a Win 10 dual boot for games); ditching Intel and Nvidia.

    tfouto

    You're right, I haven't ruled out the possibility that the older cards were just better and that all newer cards might cause issues. I did dig around in the amdgpu source code and seen that for the most part it's pretty simple to disable dithering through xrandr on the AMD cards. Also the code shows that when you do use dithering, it will choose a spatial dithering algorithm and not a temporal one. And if that ever changes, it's open source, so it can be changed quite easily with patches if need be. Opposed to the Nvidia proprietary driver where you don't know what the hell is going on.

    I've struggled with trying to keep Nvidia dithering off. Whenever I change it to disabled in the Nvidia X server settings, and then reopen the settings it automatically resets it back to on, along with resetting a bunch of other settings I was testing. And I haven't seen anyone else mention running into this problem. So maybe it's just this particular brand of GTX 970 that's messed up in Linux, I don't know.

    The more I read about Nvidia and Linux, the more I just want to get the hell away from their cards. AMD seems to have been constantly providing updates to amdgpu, whereas Nvidia barely wants to touch Nouveau and just stick with their proprietary driver.

    Also with Wayland slowly making progress, it seems AMD is far more ahead with supporting it then Nvidia.

      tfouto

      It's a newish alternative display server protocol to X11/Xorg that is trying to solve a lot of problems that the X server protocol can't handle. Such as multi monitors with differing refresh rates on one X screen; being able to set separate DPI's per monitor; better handling of higher refresh rate monitors. Those are some of the features I'm most interested in, since I use multi monitors.

      Wayland is just very slow going with development as so many Linux applications have come to depend on X11/Xorg.

      As far as Windows 8.1 goes. HELL no. I hate that metro interface. I've never had any eyestrain issues with Win 10 when I have used it. I've really only used it recently to play games like Forza Horizon 4.

        Wallboy There are people who say that after a certain build Windows 10 causes eye strain.

        In have a Sapphire Radeon HD5450. It still uses the older "radeon" driver under Linux. It is unusually, extremely unusable in all OS and even in the BIOS screen, in simple Text mode of Windows installers, everywhere. The "radeon" driver told xrandr that dithering was "off" by default. Yet it didn't help at all. Maybe the dithering of some cards just can't be turned off? Or the driver is not properly functioning. In have never tested an AMD card that uses the newer amdpgu driver. Maybe it is doing things differently, and/or better maintained.

          KM

          Yeah my ATI's were using the older radeon driver as well. The source code when it came to selecting dithering was pretty similar with both the radeon and amdgpu driver; opting to choose spatial dithering when enabled. And AFAIK it's temporal dithering that is problematic, not the other dithering algos.

          diop Intel has a large prescence on Social Media, and the graphics driver team are around. I have recently reached out to a member from Intel with my concern's re: dithering/being unable to use my NUC. I didn't want to flood /r/Intel so sent PM's - and got a response.

          Hi - thanks so much for reaching out to me about ledstrain.org. I'm sorry to hear about your eyestrain issue, and hope you can find a solution. I'm currently on medical leave, so unfortunately I can't do any work right now. Please send the same message to X who is covering for me while I'm out; and he can connect with the right folks.

          ..and then a futher comment

          P.S. And thank you personally for the link to that site. I'm off work due to visual issues which make it difficult for me to look at screens. Still in the diagnosis phase though.

          The irony wasn't lost on me...

          Sorry to jump back a little here @diop but this person could potentially play a pivotal part in helping us if they happen to be experiencing the issues that we are experiencing, and also work in the Intel graphics department (or can link us directly into them). Did you manage to maintain contact with them by chance?

          • diop replied to this.

            si_edgey Sorry to jump back a little here @diop but this person could potentially play a pivotal part in helping us if they happen to be experiencing the issues that we are experiencing, and also work in the Intel graphics department (or can link us directly into them). Did you manage to maintain contact with them by chance?

            You'll find they both post many of the Intel announcements over on reddit and host the Q&A sessions. I don't know their direct affiliations with Intel however I am led to believe they either work closely with the driver dev team or pass feedback to them.

            Wallboy And I haven't seen anyone else mention running into this problem. So maybe it's just this particular brand of GTX 970 that's messed up in Linux, I don't know.

            I have the sneaking suspicion with both AMD and Nvidia cards that there might be some per card VBIOS differences that can cause output differences or other issues irrespective of the driver in use.

            (i.e KM's experience)

            5 months later

            Wallboy

            Hmm... so now it got to older vs newer GPUs, huh.. this is new and I definitely never had the chance to test it out at least because none of my older PCs were bundled with an LCD monitor and, needless to say, the issue was never present on CRT monitors, at least for me, which I forgot to mention earlier. Thanks a bunch for your invaluable input, I will try testing it on this older Thinkpad T60p with ATI FireGL V5250, which should be perfect for such needs. It has yet to arrive, though.

            12 days later

            Alright, apparently what Wallboy says is TRUE. Sooner than T60p, I got this T43 15" (1440x1050 FlexView/IPS ?) with ATI Mobility X300 and have been testing it under older linux distro (opensuse 11.2) using free radeon driver. No eyestrain. For the first time in my life there was NO eyestrain under linux + LCD display. I'm pretty sure it's nothing to do with thinkpad display IPS or not. I was also thinking of trying out proprietary driver too, but I don't really want to break this system as 'fglrx' is known to cause more issues than any free linux driver ever did. With Ndivia is the other way around, though.

            So, now that we are really getting somewhere, perhaps, a few more people should join the experiment and play with their old hardware.

              Pudentane It's good to have at least one good old system that works well, but I feel older hardware is not the answer when a lot of modern software that people need for work just won't run on it. There is always new stuff coming down the pike, in 2021 we will see microled displays finally, etc. The T43 is a fine machine, but it's also a single-core 32 bit cpu.

                Sunspark but it's also a single-core 32 bit cpu.

                I know someone who had one of the first 64-bit dual core laptops in 2006. 🙂

                Sunspark Oh, but I'm not saying we should all go back to ancient machines. T43 as well as all T's from 40 to 60 is just a little vintage passion of mine, which I also took advantage of to kindly provide this input. Obviously, I like to think it was somewhat useful. At least now we can tell them "But it's not present on older GPUs!". It's definitely something as opposed to complete ignorance we were facing earlier. Now the million dollar question is: what exactly went wrong and when?

                8 days later

                I facing the same problem here! I used to think the problem was only mine. Thanks God i found this forum. I will try disabling dithering.

                  5 days later

                  ggp110 not going to help i'm afraid. At least it never helped me nor too many people in here. Some claim they just can't disable it, though I found no issues doing that, just that it doesn't fix the eye-strain at all. The truth is, you can't really do anything about it. We have tried everything and all we have concluded so far is that a) It's non-existent on certain legacy GPUs and b) It seems to be absent if using very basic video drivers like VESA, since they don't harness the full potential of your GPU and therefore the problem is not triggered. What we could do is an in-depth research and report it to AMD, Nvidia and Linux devs in every minute detail and perhaps they could finally do something about it. I don't think we can fix it ourselves, it's just too delicate.

                  Hey there. I am glad to find other people with the same issue. As I am a developer I usually sit about 10 hours a day in front of my screen and the most important thing for me is: NO EYESTRAIN.
                  For my work I have to use a Windows 10 Machine with no issues. Privately I switched to linux but just can't use it for longer than 10 minutes which makes it useless for me even though I'd loved to use it.
                  I have read all posts here and can confirm everything. I also fiddled around with the mentioned settings with no luck so far. I will try to reach out the issue to the askNoah show. I am sure he will try its best to help because he supports people who are switching from Windows to Linux.

                    dev