Performance optimized repositories - cachyos-aur

Make an issue and stop posting it under the community section in an open thread would be my first tip

well ... in my case:

I had to copy the kernel into boot and manually run mkinitcpio

the kernel is in /lib/modules/$VERSION/vmlinuz

dunny why but didn't work like "other arch kernels".

1 Like

Try to remove the kernel, you still should have a performance uplift, because of packages x86-64-v3.

1 Like

Actually the amd-pstate-epp does not bring a benefit in most cpu benchmarks, I have benchmarked all amd-pstate-epp preferences (can be set when using the powersave gov), against acpi and amd-pstate (schedutil, ondemand, performance - powersave is at them not useable), and acpi perf did showed the best result.

The EPP driver improves the frequencies switching a lot --> better power per watt ratio.

To your PS:

Which packages you are missing ?

Edit:

pstate-epp will need with 6.0.2 then a cmdline parameter to be enabled:
amd_pstate.epp=1

2 Likes

well... actually it does! but in my case i have to use amd_pstate.shared_mem=1 so, other cpus might have different results.
the result on amd-pstate-epp is only comparable to amd-pstate with performance gov, but then, it gets much hotter and uses more watts. i guess amd-pstate-epp on performance gov is kinda like amd-pstate performance gov, but turning freq to min when not in use. FINE by me.

in here, zen2 cpu, it doesn't switch much frequencies... its either min freq or max freq.

I don't remember all of them, but for example notice on this recent testing that chromium is missing. its cool that ungoogled-chromium exists, but is not a 1:1 map with arch repos.

But I found amd_pstate_epp performance to be similar as amd-pstate ondemand.
According to my tests here(https://forum.garudalinux.org/t/discussing-linux-kernels-for-garuda-linux/):
The xanmod kernel using amd-pstate gives more battery, and the overall temperature seems lower than the linux-bore kernel with amd_pstate_epp.

well ... dunno!
I am not invalidating any results, just stating what is happening here on my znver2!

that chromium is missing. its cool that ungoogled-chromium exists, but is not a 1:1 map with arch repos.

We don't actually provide optimized "community" repo(in which chromium is), maybe in future.

I think you have not used the the powersave gov, then you are able to set different preferences.
The performance gov is not really good at the epp driver, you should do following:

sudo cpupower frequency-set -g powersave
echo power | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/energy_performance_preference

Following can be set as prefererence:
default performance balance_performance balance_power power

Here you can read more about the ppw.
https://lore.kernel.org/lkml/[email protected]/

4 Likes

That looks more like a Kernel parm than a Command line parm. Is it?

1 Like

It is indeed :smiley:

3 Likes

This command gave me an error

❯ sudo cpupower frequency-set -g performance               
Setting cpu: 0
Setting cpu: 1
Setting cpu: 2
Setting cpu: 3
Setting cpu: 4
Setting cpu: 5
Setting cpu: 6
Setting cpu: 7
Setting cpu: 8
Setting cpu: 9
Setting cpu: 10
Setting cpu: 11
Following CPUs are offline:
12-15
cpupower set operation was not performed on them

But I could do the same thing with corectrl, so no worries.

~ 
❯ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver
amd_pstate_epp

~ 
❯ cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
powersave

~ 
❯ cat /sys/devices/system/cpu/cpu1/cpufreq/energy_performance_preference
performance

~ 
❯ echo power | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/energy_performance_preference
power

❯ cat /sys/devices/system/cpu/cpu1/cpufreq/energy_performance_preference
power

As you can see energy_performance_preference is set to performance by default on boot.
So I have to run this every time I boot:

❯ echo power | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/energy_performance_preference
power

Is there a way to do it automatically on boot?

I have enabled corectrl to start on startup, so it automatically sets the scaling_governor to powersave

Hey tnx for this! I've been trying to find a way to know whether I run or not EPP. So interesting when we read posts and follow all sorts of threads.

What does your inxi "say" :slight_smile: ?

amd-pstate

Speed (MHz): avg: 3996 high: 4680 min/max: 400/4680 boost: enabled
base/boost: 3300/4650 scaling: driver: amd-pstate governor: performance
volts: 1.2 V ext-clock: 100 MHz cores: 1: 3374 2: 4680 3: 3453 4: 4680
5: 4680 6: 3372 7: 3319 8: 4680 9: 3471 10: 3605 11: 3510 12: 3529
13: 4680 14: 4680 15: 3544 16: 4680 bogomips: 105511

amd_pstate_epp

  Speed (MHz): avg: 573 high: 3175 min/max: 400/4680 scaling:
    driver: amd_pstate_epp governor: performance cores: 1: 400 2: 400 3: 400
    4: 400 5: 3175 6: 400 7: 400 8: 400 9: 400 10: 400 11: 400 12: 400
    13: 400 14: 400 15: 400 16: 400 bogomips: 105519
1 Like
scaling: driver: acpi-cpufreq

Darn it! I gotta fix this. Tnx for pointing it out SGS and Austin. :smiley:

3 Likes

Is there a specific reason why cachyos is not in the Garuda Kernel Settings list?

Its not in Chaotic-AUR, thats why :eyes:

2 Likes

This looks like it will be interesting to try out. I have a 5800x3d coming in the mail so I will wait for that to arrive and swap it out before trying this, but I will give it a try

1 Like

I got my 5800x3d installed this afternoon and I was able to add the cachyos repo, but the kernel is giving me issues. The first time I attempted to switch to the kernel it completely broke my OS, I have an encrypted garuda install and after rebooting I was only able to get as far as typing in the password to my encrypted drive and it would just boot loop, luckily I have my system set up to automatically run a timeshift backup any time pacman installs or updates a package so I was eventually able to restore to the snapshot from before I installed the kernel. I tried installing the kernel again and it installed successfully and mkinitcpio ran as expected, but neither update-grub nor sudo grub-mkconfig -o /boot/grub/grub.cfg correctly added linux-cachyos to grub's list of kernel boot options. I am currently looking through some of the grub config files to see if I can figure out how to manually add the new kernel to grub, but if anyone has figured this issue out already assistance would be great.

Earlier in the thread it was mentioned in some cases the kernel has to be manually copied from /lib/modules/$VERSION/vmlinuz to /boot.

If you haven't tried that yet, maybe give it a shot and then update-grub again.