Everyone wants the Linux distribution they are using to be fast. This is practically a content-free statement, of course: who would want their distro to be slow? But at the same time, what does it mean for your distribution to be fast? For example, Ubuntu 21.10 switched the default compression for packages to zstd, which […]
I’d wager that it’s your scheduler. Prior to the latest kernel release (v6.6), Linux used the CFS scheduler which is outdated and not really optimal for desktop usage. As a result, many third-party alternate schedulers were developed to fix this issue, with the most recent popular ones being the System76 scheduler (used in Pop!_OS), and BORE (used in CachyOS). But this issue has been solved officially now, with the EEVDF scheduler (earliest eligible virtual deadline first scheduling), which has finally replaced CFS.
So if you’re not on 6.6, upgrade to it, or use the System76 scheduler. Also switch to Wayland if you haven’t already and you’ll notice your Linux desktop just as smooth, if not smoother, than Windows.
I have an M1 MacBook Air and a Thinkpad Z13 G1 (running Bazzite KDE with kernel 6.6.3 + System76 scheduler), and comparing the touchpad gestures and window animations side-by-side - especially the gestures and animation to switch workspaces - it’s just as smooth as macOS (at least to my eyes), and that’s quite the feat given that macOS has been the king of smooth animations and responsiveness for a long time.
Linux used the CFS scheduler which is outdated and not really optimal for desktop usage.
And Linux kernel is full of outdated math. Like outdated addtion, outdated subtraction. /s
If you want “like on windows”, then you need dynamic priority, not another scheduling algorithm. Basically you want your compositor to set lower priority value(which means higher priority) to process whoose window now is focused.
I’d wager that it’s your scheduler. Prior to the latest kernel release (v6.6), Linux used the CFS scheduler which is outdated and not really optimal for desktop usage. As a result, many third-party alternate schedulers were developed to fix this issue, with the most recent popular ones being the System76 scheduler (used in Pop!_OS), and BORE (used in CachyOS). But this issue has been solved officially now, with the EEVDF scheduler (earliest eligible virtual deadline first scheduling), which has finally replaced CFS.
So if you’re not on 6.6, upgrade to it, or use the System76 scheduler. Also switch to Wayland if you haven’t already and you’ll notice your Linux desktop just as smooth, if not smoother, than Windows.
I have an M1 MacBook Air and a Thinkpad Z13 G1 (running Bazzite KDE with kernel 6.6.3 + System76 scheduler), and comparing the touchpad gestures and window animations side-by-side - especially the gestures and animation to switch workspaces - it’s just as smooth as macOS (at least to my eyes), and that’s quite the feat given that macOS has been the king of smooth animations and responsiveness for a long time.
How did you know??
And Linux kernel is full of outdated math. Like outdated addtion, outdated subtraction. /s
If you want “like on windows”, then you need dynamic priority, not another scheduling algorithm. Basically you want your compositor to set lower priority value(which means higher priority) to process whoose window now is focused.