5 ms·
I don't think there was ever a design to be one frame behind. Compositing requires the GPU to do some extra work to draw the frame to be presented. This typica
by hackernudes 2mo ago
I don't think there was ever a design to be one frame behind.
Compositing requires the GPU to do some extra work to draw the frame to be presented. This typically takes very little time (much less than a full frame period). Additionally, most wayland compositors will bypass that extra step if an application is full screen (wlroots calls it "direct scanout").
Also some wayland compositors keep track of timing and delay the final composition until right before it is time to present the frame in order to reduce latency.
- gf000 2mo agoAnd for the complete picture, X is predominantly used with a compositor, so that same extra latency exists there as well.
- cwillu 2mo agoIt's generally a single checkbox to turn off compositing in X11, for precisely this reason.
- FeepingCreature 2mo agoYou can also disable compositing conditionally in KDE, such as when a game window is opened.
- Chu4eeno 2mo agoNot in Wayland, the whole point of Wayland is to make stuff the X server + compositor + various other bits into the window manager.
- gf000 2mo agoFor full-screen applications, Wayland has a protocol to let it display frames at its own pace - meant mostly for games for this very reason.
- FeepingCreature 2mo agoWith X11, you can disable composition for windowed apps as well.
- preg_match 2mo agoYes, but the same is true in Wayland and it's automatic as well. Full screen applications don't require compositing so they typically don't, and this was the case in MOST X11 compositors as well. Turning off compositing before launching a game is maybe a bit misguided, sort of like turning on the "classic theme" in Windows 7 before launching a game. It might save some memory, sure, but latency should be identical.
- cwillu 2mo ago> latency should be identical Should be, but very clearly isn't.
- preg_match 2mo agoThe results show it's identical. Only XWayland suffered any significant degradation, and even then we're talking <5ms which is imperceptible.
- cwillu 2mo agoThose results depend on having a 500hz monitor. There's a world of difference between a mildly-buggy rendering loop's 1-frame delay or missing a vsync deadline causing a 2ms delay vs a 16ms delay.