I don’t think he should have included the starting frame-- if the cursor were theoretically instant, his method records it with a 1 frame delay, and this +1 frame error happens on every test. Correcting this actually makes Wayland more laggy proportionally, although it makes both less laggy absolutely.

  • Ada
    link
    fedilink
    English
    8
    edit-2
    2 days ago

    What I’ve noticed with Wayland in Plasma is that it’s very much tied to my monitors refresh rate.

    At 240Hz, with adaptive sync turned off or to Automatic, I get a very responsive cursor.

    At 75Hz, or if I force adaptive sync to be on at all times (instead of off or Automatic), then I get a noticeable mouse latency

    • @[email protected]
      link
      fedilink
      English
      1
      edit-2
      2 days ago

      Plasma

      I don’t perceive this with Sway (1.10-2) using a mouse being polled at 1000 Hz.

      When I turn on my monitor’s FPS display and my mouse is not moving, the monitor reports that the frame rate drops down to the lowest rate available (48 Hz), then when the mouse is moving, jumps up to the highest rate.

      investigates

      Hmm. Apparently there’s someone complaining about that behavior occurring in games during mouse movement, and saying that Sway’s behavior is a bug.

      https://github.com/swaywm/sway/issues/6832#issuecomment-1079941291

      I start a game (for example Overwatch, or Witcher 3 - both are running through wine). Normally the game would run at a framerate higher than 165fps
      I cap the framerate (for example with Overwatchs ingame limiter, MangoHud, or Gamescope), to something lower, for example to 100fps
      FreeSync is working, which I can see because my monitor displays the current refresh rate
      As soon as I move the mouse, the refresh rate jumps up to 165

      The effect does not occur in Plasma Wayland (with Kwin)

      I guess the concern is that one doesn’t want that to happen in a typical fullscreen game that can’t render at the monitor’s full frame rate, but do want to with, say, the desktop environment to keep the pointer responsive.

      Honestly, while I use adaptive sync, I only really care about it for fullscreen movie playback, where I want the monitor to be able to run at the movie’s framerate. I actually hadn’t even thought about the fact that it affects games. Hmm.

  • @A_A
    link
    English
    7
    edit-2
    2 days ago

    Latency raw data :

    Gnome Variant Δ camera frames Average (Δ) Δ milli seconds Δ monitor refreshes
    X11 5 4 3 4 5 4 6 5 1 4 4 4 3 4 4 4 4.00 16.7 2.4
    Wayland 6 5 6 5 5 6 6 4 8 6 5 5 5 6 5 6 5.5625 23.2 3.3
    Δ(Δ) - - ~1.5 ~6.5 ~1.0

    instead of calculating the average one could decide to drop the data points that are way outside of their goups.
    Doing so, in the first group I would neglect the value of Δ = 1 or 6 frame and in the second group I would neglect the value of 4 or 8 frames

    Results :
    X11 : from 3 to 5 frames
    Wayland : from 5 to 6 frames
    Δ(Δ) = 5.5 - 4 = 1.5

    Still it doesn’t change the final result that the difference between these two Gnome versions is 1.5 camera frames at 240 frames per second.

      • @A_A
        link
        English
        2
        edit-2
        2 days ago

        Thanks. Also, after a bit of thought, i do believe you are right saying that we should remove one frame of all the raw camera data. … it will, as you say, decrease the absolute values and make Wayland more laggy proportionally, yet, it doesn’t change the absolute difference.

  • @[email protected]
    link
    fedilink
    English
    4
    edit-2
    2 days ago

    I saw some cheap laptops with Ubuntu in a local mall and on them the latency on Wayland was unbearable.