While browsing the intel-gfx archives I found this post > https://lists.freedesktop.org/archives/dri-devel/2017-September/152651.html

i915.enable_dithering allows to force dithering on all outputs on (=1) or off (=0). The default is -1 for current automatic per-pipe selection.

This is useful for debugging and for special case scenarios,e.g., providing simulated 10 bpc output on 8 bpc digital sinks if a 10 bpc framebuffer + rendering is in use.

A more flexible solution would be connector properties, like other drivers (radeon, amdgpu, nouveau) already provide. A global override via module parameter is useful even with such connector properties, e.g., for scientific applications which require strict control over dithering, to have an override for DE's which may not expose such properties via some standard protocol in a user-controllable way, e.g., afaik all currently existing Wayland compositors.

This is from 2017 so I don't know if this was eventually implemented, or if the author is an Intel dev (I assume so).

Another interesting read re: dithering/noisy output on Linux >4.2.

https://patchwork.kernel.org/patch/6995211/

It will need a bit of work to find this out when i'm back in the lab. So far
i just know something bad is happening to the signal and i assume it's the
dithering, because the visual error pattern of messiness looks like that
caused by dithering. E.g., on a static framebuffer i see some repeating
pattern over the screen, but the pattern changes with every OpenGL
bufferswap, even if i swap to the same fb content, as if the swap triggers
some change of the spatial dither pattern (assuming PIPECONF_DITHER_TYPE_SP
= spatial dithering?)

If that's the case we simply limit to only ever dither when the sink
is 6bpc, and not in any other case.

So my understanding is that dithering is used to simulate a higher colour range. E.g. Make a 6-bit display look like 8-bit, make an 8-bit display simulate 10-bit etc. Is this why Windows 10 looks ultra saturated compared to W7? I have checked the colour range is set to limited (my personal preference), but if dithering of any sort is enabled is the driver trying to force 10-bit colour 'effect' on my monitor? Dithering is the rapid value adjustment of a pixel's colour. If we zoomed in on a single pixel and it's value was going from darkest blue to lightest blue in a quick succession, it would essentially be a strobe effect. Obviously the jump to closer values won't be as obvious, but it is inevitable that it would have an effect on the output (flicker, movement). Is the desktop without temporal dithering (spatial) that bad? If I bought a very expensive monitor tommorrow (10-bit), I would be very unhappy that plugging it into any Mac would not show me as native a picture as possible, as it would be dithered regardless. Even beyond our symptoms, I think there is a use case for photographers/video editors etc to disable dithering.

13 days later

Actually both my CCFL monitors are 8 bits (dell U3011 and dell U2711), but they can support 10 bit via FRC.
Disable dithering doen't help me, so I think that FRC is triggered somehow on modern OS in some way regardless of 24 bit colors specified in system. Is there any way do switch off frc?

a month later

If you have ati/amd card you can join to investigations in https://gitlab.freedesktop.org/drm/amd/issues/977
The current attempt here is to find video card registers that could trigger sympthoms. In my case there are near 70 differences in register values on Good and Bad OS, most of them are not well documented so it's bit difficult to understand their meaning and it's still not clear how update registers directly.

6 days later

I remember back in 2014 trying to use Ubuntu but being really dizzy looking at the screen (the font rendering got me mad!!). I eventually discovered that you can change the aliasing settings and I disabled them. It seemed to work fine for me.

After all these years, I kept reinstalling / using Ubuntu on other machines and somehow came to realize that at least lately, I've forgotten to change those font aliasing settings...

So either they changed something (that for me turned out to be for the better) or I got used to them.. I don't know!

MacOSX makes me tilt instantaneously, though! I can't stand their font rendering algorithm at all!

22 days later

I've wrote that I tested several old ati cards and quiet recent nVidia one, all of them causes similar symptoms.
I've also bought AMD RX 570 card yesterday to test with Linux cause it's supported by new amdGPU driver.
And after starting Linux I've immediately getting pressure in temple area and tinnitus (sound in ears).
Is anybody has similar symptoms on any card?

a month later

Actually I found that current dev builds of kubuntu 20.04 (not tried other ubuntu DE yet) is quite useful for me on old radeon card (HD 5670). Working on it last 3-4 days

  • vaz replied to this.

    kammerer

    Other distributions are painful on that hardware? Can you test the Kubuntu on other hardware and see if its good elsewhere? Any theories?

      vaz Other distributions are painful on that hardware?

      Yes, I've tried a lot of different distros on it (Debian, Manjaro, OpenSuse, Mageia, [XL*]ubuntu 16-19 ...) without any success

      • vaz replied to this.

        vaz Can you test the Kubuntu on other hardware and see if its good elsewhere?

        I can't test Kubuntu 20.04 dev builds on other hardware

        Hi. My eyestraining problems are so extreme I can't use any screen which is no eInk without dizzynes in a few minutes. I have a 13" eInk HDMI screen which worked perfectly on a Windows7 machine, but after reinstalling another windows version (7 or 10) it also eyestreied me. Ubuntu and Rasbpian does the same. My graphics card is a Nvidia GeForce GT710

        Installed Ubuntu 14 but when entering into desktop the computer freezes, so today I am going to install Windows XP SP1 and Linux mint 14 to see what happens. I am going to try Windows XP with driver and without. I will tell you if it works for me

        Hi guys,

        have not written in a while because I fixed the problem for me on Linux and Windows.

        I noticed when I install 4.15.0-65-generic Kernel on Ubuntu 18.04 it is making all of my computers better. However it is not "perfect" on e.g. ATI cards. NVidia is still the best for me.

        When I install 4.15.0-88-generic or higher it gets significantly worse. Have not checked the kernels in between. Would be interested in what code change did this and if this is configurable in newer versions.

        Hope that helps anyone.

        Best setup:
        Ubuntu 18.04 Kernel 4.15.0-65-generic
        Quadro P600 (dithering disabled in driver)
        Dell 2408 connected with DP

        But also noticable on a Thinkpad W500 using an ATI GPU and a Fujitsu laptop running on Intel

        EDIT:
        Just upgraded the NVidia driver from 440.59-0ubuntu0.18.04.1 to 440.64-0ubuntu00.18.04.2 and it got worse.
        Had to install 4.35 and it is better again.

        EDIT 29th of March:
        Still not as comfy as my Windows 10 setup. Was reverting to Nouveau and linux-firmware version 1.173.12. 1.173.16 is worse. However with this version I cannot suspend as the system does not get up anymore 😐

        EDIT 31st of March:
        Ok, I made it better again using the NVidia driver. Secret here was to disable dithering (which is obvious) but also "Sync on VBlank".

          deepflame The driver you use, is it the open source driver "nouveau" or the proprietary Nvidia driver? And did you notice a difference between the two?

            kammerer This is not vendor related. I could reproduce it with different GPUs. So I think it is OS related and does not affect hardware dithering.

              dev