There are custom pre-compiled kernels that come with BORE. Not sure about Nix and I don’t know if they even have custom kernels in the repos at all, but there is linux-cachyos-bore on Arch. CachyOS is a pretty cool Arch-based distro that offers multiple kernels with different optimizations. They also put them in the AUR, so any Arch user can install them.
Now, what this means is you can boot this kernel, then just start the scheduler from userland, e.g.
run0 scx_rustland
It uses bpf, so the scheduler switches immediately and is as fast as anything in the kernel space. What makes this rustland scheduler super interesting is how it can detect what application is currently active, and give it a full priority over anything else. So you can compile code in the background with all cores, and at the same time play a game with the best frame rate.
There are other sched_ext schedulers available, at least on nixos with the cachyos kernel I get a bunch of scx_ binaries to play with.
For nix users here, nyx flake packages and compiles the cachyos kernel:
Oh hell no why the actual fuck does systemd attempt to replace every single component of the Linux stack? We don’t need more of this monolithic bullshit. What’s next, replace the Linux kernel with systemd? Fucking hell. And why the hell did they give it such a stupid name??? run0? The only way this makes sense, is because 0 people should actually run this on their god damn system. I’m just waiting for applications to start breaking because some stupid systemd dependency, which itself depends on 15 gigabytes of other systemd bloat isn’t installed.
Sorry for the rant
I’ll definitely stay on Gentoo with doas and OpenRC
I see rt and zen at least being available. Would of course be quite easy to just send them a PR for bore patches, but I think I wait for sched_ext to land instead…
There are custom pre-compiled kernels that come with BORE. Not sure about Nix and I don’t know if they even have custom kernels in the repos at all, but there is linux-cachyos-bore on Arch. CachyOS is a pretty cool Arch-based distro that offers multiple kernels with different optimizations. They also put them in the AUR, so any Arch user can install them.
Thanks for sparking my interest on cachyos kernels and what they patch. In addition to bore, they also patch the sched_ext support!
https://github.com/CachyOS/linux-cachyos?tab=readme-ov-file#cachyos-default-kernel
Now, what this means is you can boot this kernel, then just start the scheduler from userland, e.g.
It uses bpf, so the scheduler switches immediately and is as fast as anything in the kernel space. What makes this rustland scheduler super interesting is how it can detect what application is currently active, and give it a full priority over anything else. So you can compile code in the background with all cores, and at the same time play a game with the best frame rate.
There are other sched_ext schedulers available, at least on nixos with the cachyos kernel I get a bunch of scx_ binaries to play with.
For nix users here, nyx flake packages and compiles the cachyos kernel:
https://github.com/chaotic-cx/nyx
Wtf is run0
Edit: Is that nyx flake made by the same guys as the Chaotic AUR repo for arch?
https://www.freedesktop.org/software/systemd/man/devel/run0.html
Looks like it if you check from GitHub.
Rant about systemd
Oh hell no why the actual fuck does systemd attempt to replace every single component of the Linux stack? We don’t need more of this monolithic bullshit. What’s next, replace the Linux kernel with systemd? Fucking hell. And why the hell did they give it such a stupid name??? run0? The only way this makes sense, is because 0 people should actually run this on their god damn system. I’m just waiting for applications to start breaking because some stupid systemd dependency, which itself depends on 15 gigabytes of other systemd bloat isn’t installed.
Sorry for the rant
I’ll definitely stay on Gentoo with doas and OpenRC
I’m too old to rant about systemd :D
They have a few in the main branch: https://github.com/NixOS/nixpkgs/tree/master/pkgs/os-specific/linux/kernel
I see rt and zen at least being available. Would of course be quite easy to just send them a PR for bore patches, but I think I wait for sched_ext to land instead…