Which custom kernel to use?

Hi,
I am new EndeavourOS. Because EndeavourOS is opening up the Arch universe for me I see several custom kernels beside the default arch kernel:

linux-lqx
linux-xanmod
linux-zen

I tried to find pros and cons for each of them but what I found is not satisfying me.

Isnt linux-lqx and linux-zen the same thing anyways? But then, linux-zen is in the arch/extra repo while the other two are in the AUR. Sould I prefer linux-zen then? And what are these kernels actually doing other than changing some CFS parameters, which I could do with sysctl as well without using a different kernel.

I am a little bit lost. Can somebody shed some light on this for me please? I am searching for the best kernel for my laptop.

1 Like

idc what is the best of the laptops , is two ways , build one of those or find a unofficial repository with a prebuild linux-xanmod …
thats mostly to find oud, and for some uses Mesa aco for games etc…

… forgot to mention linux-ck

There’s also a https://github.com/torvic9/linux59-klitoris

By our friend @anon31687413 i’m sure he can hook you up with lots of info on those Kernels comparisons as well :yum:

I saw this one but dont consider it serious because of its name.

5 Likes

:blush:

1 Like

I gave it that name to make it look unserious :slight_smile:
(it isn’t, I spent tens of hours on it [*])

Btw, I consider the name linux-zen to be a bit awkward too, it could be mistaken for a kernel that is optimised for AMD Zen.

Also, to be honest, the difference between all these custom kernels including mine is IMO relatively small in daily usage. Some of them might be better for gaming, others better for number crunching, again others are more focussed on security.
Many people seem to be quite happy with zen, so that one might be a good starting point.


[*] Main features: better support for building with clang (why?), ProjectC (BMQ and PDS schedulers), better support for custom signing keys, a few backports from 5.10/next, futex patch, and slightly optimised defaults, and, if necessary, security fixes.

5 Likes

Since @mbod asked about laptop, but mentioned only maximum performance…

Just for the full picture, all of the custom Kernels should be little more power-hungry compared to normal Kernel, is that still right?

Hmm not necessarily. Difficult to tell, my laptop is almost always hooked up to the mains. It certainly depends a lot on the config used.

If I had to recommend a custom kernel, I’d go for zen. It certainly wouldn’t be in the official repos if it were complete crap… :slight_smile:

(PS: I’m going to change the name of my kernel again for 5.10. Need more feedback from people. I didn’t expect klitoris to be so off-turning, at least not more than v(enereal)d(isease) :laughing:)

5 Likes

These are built on the same patches but -lqx has a more aggressive set of defaults (which are apparently/possibly targeted more at Debian than Arch?). -xanmod is targeted more at gaming and has a fair bit of overlap with -zen.

The only real way to know which one works best is to try them all and see. :man_shrugging:

5 Likes

linux-victory ?

(I think that would be… a winner)

(ah ha ha haaaa)

(/me dies)

3 Likes

Doesn’t sound bad at all :slight_smile: Noted.

1 Like

Not max. performance. My main concern is low latency so that the GUI always behaves smooth even under load.

1 Like

Then any kernel using BMQ/PDS/MuQSS will probably fit the bill.
Although you can tune the vanilla kernel towards low latency as well without rebuilding.

1 Like

Stop renaming :stuck_out_tongue:

just call it Linux-Freax :slight_smile: that was linux supposed to call Freax ;

1 Like

Welcome to the light side of the moon.

FWIW I’ve been running linux-zen since switching to EOS and its been running great, no issues. I’d recommend this if you don’t want to build your own kernel from an AUR PKGBUILD.

I also have linux-lts and linux as backups in case I have any issues or incompatibilities with the mainline zen kernel. I originally installed linux and linux-zen to compare the two on my system … no discernible difference.

If you have older hardware that requires older lts kernels @jonathon has created an unofficial repo.

This way you don’t have to build the lts kernels yourself from the AUR.

linux-louis ?

Or is Louis CK still “cancelled”?

3 Likes

IMO don’t use a custom kernel. The stock one is pretty good. Changing the kernel will not give you more frames in gaming or anything new in general. I tried XanMod when I used POP_OS and i had 0 performance boost or any major changes when it came to speed.
Besides, custom kernels (maybe) get updates slower than stock ones, though nothing problematic.
If you want to really use a custom kernel, Xanmod looks promising.

1 Like

Tips? :slight_smile:

You can tweak the CFS time parameters with the sysctl command.

I tried to figure out which values are being used by the zen kernel for example and this is what I have come up with during my own tests:

# https://github.com/zen-kernel/zen-kernel/commit/4972211d9badee8405dbc58218020068b7df538d
echo "ZEN: INTERACTIVE: Tune CFS for interactivity"
sched_latency_ns=4000000
sched_min_granularity_ns=400000
sched_wakeup_granularity_ns=500000
sched_migration_cost_ns=250000
sched_cfs_bandwidth_slice_us=3000

sysctl kernel.sched_latency_ns=$sched_latency_ns
sysctl kernel.sched_min_granularity_ns=$sched_min_granularity_ns
sysctl kernel.sched_wakeup_granularity_ns=$sched_wakeup_granularity_ns
sysctl kernel.sched_migration_cost_ns=$sched_migration_cost_ns
sysctl kernel.sched_cfs_bandwidth_slice_us=$sched_cfs_bandwidth_slice_us

You can add this to your own boot script (e.g. rc.local). My tests so far are not showing any meaningful difference when I set these values.

EDIT:
By the way you can find the default values your kernel is using by executing as root:

sysctl -A | grep "sched" | grep -v "domain"

3 Likes

Yeah i think those differences you should see only under some specific types of use / workloads…
Overall system snappiness should be about the same