Skip Navigation

Wayland windows can apparently vsync to multiple monitors at once at different refresh rates

Neat little thing I just noticed, might be known but I never head of it before: apparently, a Wayland window can vsync to at least 3 monitors with different refresh rates at the same time.

I have 3 monitors, at 60 Hz, 144 Hz, and 60 Hz from left to right. I was using glxgears to test something, and noticed when I put the window between the monitors, it'll sync to a weird refresh rate of about 193 fps. I stretched it to span all 3 monitors, and it locked at about 243 fps. It seems to oscillate between 242.5 and 243.5 gradually back and forth. So apparently, it's mixing the vsync signals together and ensuring every monitor's got a fresh frame while sharing frames when the vsyncs line up.

I knew Wayland was big on "every frame is perfect", but I didn't expect that to work even across 3 monitors at once! We've come a long, long way in the graphics stack. I expected it to sync to the 144Hz monitor and just tear or hiccup on the other ones.

7
7 comments
  • TL;DR Wayland is good

  • Super apparent performance on my ancient Chromebook with barely any resources. Beautiful animations that make it look like a modern laptop, well, until ram runs out. It can run about 3x as much stuff compared to stock ChromeOS. Love this with Pipewire, Linux a/v is honestly better than both osx and windows now and I'm so impressed. Can even do pro audio type stuff where you route the a/v from one app to another. It's worth losing all the network ability that X11 has

    • Yeah, also pretty excited about PipeWire, the video stuff opens a ton of doors for OBS and broadcasting in general on Linux.

      It's worth losing all the network ability that X11 has

      Waypipe is pretty good, can totally watch YouTube over SSH into a VM. It uses video codecs for compression, so in theory it can probably even get extended into game streaming. Probably not so great on low bandwidth environments but it's not like modern apps use Xlib anyway, it's all rendered by the client.

      DEs are also implementing compositor level RDP support, which brings in a ton of room for properly optimizing remote access.

      • Yeah I mean it's still kinda cool. X protocol is vector based iirc, and you can just set up xauth and use ssh -X to forward windows over ssh

        Anyway I'm sure this doesn't matter today, and the performance sucks for typical use

  • This setup isn't what I use, i had wanted to try as many monitors that i had ports for and this was one result that worked.

    2 Sharp 18" tv's at 60Hz, different models and one can't do higher than 1280x720p so it was scaled 125%

    LG ultrawide 34" 100hz

    Asus 27" 75Hz

    Samsung 42" tv scaled to 75% but I couldn't get its refresh rate to change. it's supposed to do 120Hz but i only get 60 Hz

    since switching to wayland, i rarely have monitor problems and i love it, especially after switching to an AMD GPU. i had constant issues from my previous nvidia card.

    side note, i'm super poor and all of these except the LG were given to me by friends who no longer had use for them. many of these friends do website design and ask me how their sites look occasionally. they can emulate different screens i think but they're probably trying to show off or they know i have a huge variety of screens i can test things with. I have at least 6 other monitors from 4 different brands in 3 sizes and 3 different native resolutions with 2 that do rates other than 60Hz. two are CRT's. now i'm probably trying to show off.

7 comments