Introducing the Cacule Scheduler - a CFS replacement

I think that would take a long time.
Muqqs is not for the usage of everyone, like cfs is.

Since cacule is a cfs replacement / improvement it could be possible.
Also its running on arm devices, im also searching tester for this for responsive on the desktop usage.
So far as i know, no other scheduler was implemented into an arm kernel.

If there is a good improvement i think that could be possible, but there are many tests needed.

1 Like

Just pushed some fixes and some patches more included.
Also some configuration things when building the kernel are easier to understand.

If youre unsure at the microarchitecture, just choose mnative, native_intel or native_amd, depending on your hardware.

https://aur.archlinux.org/packages/linux-cacule/

https://aur.archlinux.org/packages/linux-cacule-rdb/

I also refer to the creator of the scheduler, some things are there “different” .

For example following commands are improving the experience:

sudo sysctl kernel.sched_interactivity_factor=50
sudo sysctl kernel.sched_max_lifetime_ms=60000

Also check that the following is set to 0:
sudo sysctl kernel.sched_harsh_mode_enabled=0

I tested 5.11.15-linux-cacule-8-cacule with all default setting except for the timer frequency where I picked 750 Hz.

The responsiveness with my memtester+mpv benchmark is really poor. Up to the point that the PC is not usable anymore. Waiting times of several seconds to switch between windows. The video playback is remarkably bad.

I also did a run of geekbench5. This shows a massive performance drop. The linux-zen kernel gives me values of single- core 1390 / multi-core 9980 while linux-cacule gives me 1347 / 8202. With linux-xanmod-cacule I get something around 1371 / 9945. And with linux-lqx I get 1380 / 9908. => Specifically the multi-core value of linux-cacule is far too low.

1 Like

Thanks for your feedback.
i dont referrer my Kernelbuilder as the best, I’ve got so far good feedback from testers, but its still a new project which needs improvement, there alternatives like xanmod-cacule.

Take a watch at the latest benchmarkings from the developer itself:

Also at your benchmark results there seems that it got maybe issues with your cpu scheduler?

I cloned your latest linux-cacule kernel package, built it and tested it.

My first impression with memtester+mpv is good. The video is playing fine. Geekbench is showing reasonably good numbers: single-core 1363 and multi-core 9810 for linux-cacule while stock arch kernel yields 1367 and 9864. So you seem to have fixed the issues I experienced yesterday.

The question I am having now is: What is the difference to linux-xanmod-cacule? Your kernel includes the xanmod patches. What are the benfits / downsides of picking one or the other kernel?

And by the way, I still prefer linux-zen over linux-xanmod because linux-zen is an official arch kernel. It is very well documented on github and has a big user community. If you could base your linux-cacule kernel on linux-zen it would help me to consider it for real life use.

Hey Guys,

ive recreated the complete PKGBUILD which is now much clearer and fixed some issues in the config, also its easier to set several values directly in the PKGBUILD before building the kernel.

Also Ive added a AUR-Package for the RC Kernel.
Every build is successfully tested and running so far great on my rig.
https://aur.archlinux.org/packages/linux-cacule-rc/

@mbod

What the difference is the fact you can customize the kernel to your wishes, so far it is possible.

For ex: linux-xanmod-cacule in the aur is not the offical aur package from xanmod himself. Also some maintainers are just copy pasting the PKGBUILD, change little things (adding the patchset from xanmod-cacule) and that was it, they mostly didnt updated the gcc patchset since 4 month anymore, and there where some big differences.

Also i have mostly daily contact to the creator of the scheduler, he is watching my config, additional patches and so on, if i get a okay, it goes into the aur, after i build and tested it myself successfully.
Additionally, i add different new patches when they got tested successfully. For example in the rc kernel the intrafms patches and new zstd patches,

Its hard to say what is better and so on. I’m expiring much better responsives in games and other heavy load.
If i compile something with my complete 12 threads, i dont expiry any issues on the desktop usage.

Take your time and test these different things and watch how is your daily experience.
I have to ask zen frist before i create a rebase of his kernel. Im not like the chinese guys :stuck_out_tongue:

Im also providing a little fileserver where i upload the compiled kernels and other packages.
Dont use the kernels from the fileserver if using a nvidia gpu, there can be problems, because im compiling right now with gcc11.

https://repo.ptr1337.dev/

Regards-

1 Like

Rebuilded the complete Github-reporsity

I have done some work the last days and also with the new 5.12 release.
So far the Kernel is running stable and smooth so far, improvements will be everywhere but so far i am really ok with that work.

Also i have rebased all linux-cacule packages in one github repo, so that there is a better overview which packages ill provide.

Also there is a readme how to improve the kernel with some settings.

Prebuilt packages can be found at:

https://ptr1337.dev

if any question or issues just tell me via github or here!