Research XanMod kernels on Clear Linux

Some nice figures there. Clear doing even better than expected.

1 Like

Agree :slight_smile: The Clear ltsdesktop and preempt_rt (with PREEMPT_RT knob enabled) do not exists. I built them locally for apples-to-apples comparison with XanMod.

The discovery led to a surprise. I added one more entry to the mix; the RT kernel with PREEMPT_DYNAMIC knobs (same overrides as lts preempt). That’s the kernel I chose for running on my desktop.

Viewing the results is best with two to three browser windows. Scroll to the bottom of the page in the third window for the RT PREEMPT_DYNAMIC results. Scroll to the ltscurrent, ltsdefault section in the first window and Clear rt, XanMod rt section in the 2nd window.

2 Likes

I am wondering, how can just one person do this much? You must have a few developers working in a team! :laughing:

Can’t wait @marioroy !!!

I suggested that last week :wink:

1 Like

A guy who did Many-Core Engine for Perl on his own can do this by himself @Businux. @marioroy you are an amazing human being. I apologise for my flattery.

1 Like

Thank you @Indy for the kind words.

The XanMod on Clear is interesting. Today, Sir Lego came by and asked about the customization or play factor. :blush: Ah, yes… The repo provides custom spec files. This is where to apply desired kernel customization.

linux-xmedge-custom.spec
linux-xmlts-custom.spec
linux-xmrt-custom.spec

Basically, please refrain from making modifications to the default and preempt spec files. Doing so will cause git pull to fail. Instead, make modifications to the custom spec file. The custom.spec files are ignored by git pull.

./xm-build edge-custom
./xm-install edge-custom
./xm-uninstall edge-custom

Tab auto-completion is done.

$ ./xm-build 
edge-custom    edge-preempt   lts-default    rt-custom      rt-preempt     
edge-default   lts-custom     lts-preempt    rt-default     rt-preempt_rt  

The /boot partition has limited space. So, no reason to install many XanMod kernels. Build the one you want and enjoy the XanMod kernel. If later changing your mind, remember to manage and uninstall unused XanMod kernels. Do not fill up your /boot partition.

1 Like

I finished the project and made a new thread for announcement.

1 Like

Sucess!! I can feel the fluidness of the GUI straight away.

Screenshot from 2023-09-24 15-34-16

1 Like

if I may ask, why are you basing your kernel on 6.1.54 and not 6.5.7 like the current release?

The research was done for XanMod Edge, LTS, and Realtime kernels on Clear Linux. The edge flavors are based on the current release.

$ ./xm-build
synopsis
   ./xm-build edge-default | edge-preempt  # 6.5.8
   ./xm-build lts-default | lts-preempt    # 6.1.59
   ./xm-build rt-preempt                   # 6.1.59
1 Like

Thanks for the reply!

Would you mind explaining

Set boot-timeout and system‐wide configuration to avoid clr‐boot‐manager changing efi variables.

sudo mkdir -p "/etc/kernel"
sudo tee "/etc/kernel/timeout" >/dev/null <<'EOF'
5
EOF
sudo tee "/etc/kernel/update_efi_vars" >/dev/null <<'EOF'
false
EOF

My understanding is that it is changing the time the boot menu is shown for and preventing clr-boot-manager from messing with efi, but I would like to know why this is needed.

The default timeout is zero seconds after installing Clear Linux. That makes it impossible to select a kernel. For example, the XanMod kernel is the default and wanting to boot using the Clear kernel. A typical scenario is removing or updating the XanMod kernel.

After the initial OS installation, there is no reason to write to EFI NVRAM so to prolong its lifespan. Another reason is preserving the default boot via BIOS settings (multiple OSes).