Linux Kernel 6.6 LTS CPU regression on i7 Alderlake

Dear community.

I’ve been using Manjaro for 4 years now and it just works.

Currently I am running the default 6.1 LTS kernel on Manjaro Gnome.
After I updated the kernel to default 6.6 LTS and made the Geekbench 6 CPU test, I discovered a performance regression especially on the single core.

6.1 Kernel:
SC: ~2600
MC: ~10500

6.6 Kernel:
SC: 1330
MC: 10409

What do I do wrong? Or how can I fix it?

System Details Report

Report details

  • Date generated: 2024-02-29 15:20:53

Hardware Information:

  • Hardware Model: SLIMBOOK Executive
  • Memory: 32,0 GiB
  • Processor: 12th Gen Intel® Core™ i7-12700H × 20
  • Graphics: Intel® Graphics (ADL GT2)
  • Disk Capacity: 3,0 TB

Software Information:

  • Firmware Version: N.1.05GRU07
  • OS Name: Manjaro Linux
  • OS Build: rolling
  • OS Type: 64-bit
  • GNOME Version: 45.4
  • Windowing System: Wayland
  • Kernel Version: Linux 6.1.77-2-MANJARO

Since Alderlake introduce this new efficiency (E-)cores, its maybe possible that the scheduler just redirected a E-Core instead a power (P-)core to the task… possible a simple system restart already could fix it?

Im not a big fan from E-Cores btw… in my opinion its a downgrade, atleast for PC Users… i would instant disable this E-Cores in Bios, as long i dont need this E Cores for Image Processing or Video Encoding. But this is just my opinion.

Could be. I thought of that too.
Reboot does NOT solve the issue.

Is it possible to deactivate them in Bios? when there are only P-Cores available the SC Score probably go back to 2600 Points.

Maybe this can also adjusted in Process Governor in Manjaro, but thats just a blind guess.

No. At least not in my BIOS.

Anyone? Please help.

My first guess was some new security mitigation.

Like here:

But that should only affect amd.

EEVDF replacing CFS would be another good guess … but its supposed to be better not worse, of course.

Another big change with 6.6 was Intel Shadow Stack (CET,SHSTK). Maybe related?
This has an easy toggle; use boot option nousershstk

Also, attached are ~warnings~ that this is a security feature, blah blah, etc.
Heres the kernel documentation:

There is no way that 6.6 LTS has a 50% single-core performance regression on a common Intel cpu. Other people would have noticed and there would be many, many, many, many very loud complaints.

Try other cpu benchmarks like Prime95.

1 Like

For sure, because if I open Signal Desktop or any other software (Firefox, Skype, etc) for example I have to wait twice as long to have it opened in comparison to 6.1 LTS.

So you say. I can disable Intel Shadow Stack by using nousershstk as a boot parameter?

These are my current kernel parameters:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash apparmor=1 security=apparmor udev.log_priority=3 nvidia-drm.modeset=1"

By disabling Intel Shadow Stack I did not get any improvements.

Here is the benchmark I was talking about. Anyone, please help.

may be try linux67 or coming linux6.8 ( testing )

That is with an almost 100% certainty caused be a vulnerability mitigation.

Such mitigation is applied by default and you have to deliberately disable.

Add the kernel argument mitigations=off to your default kernel command line /etc/default/grub rebuild init - rebuild grub config - reboot.

Okay. So, what I did and what are the results.

I added mitigations=off to the end of the GRUB_CMDLINE_LINUX_DEFAULT

Than sudo update-grub shutdown and booted into Manjaro 5 seconds later.
Reran the benchmark on 6.6 kernel. And nothing has changed.

I also tried Fedora 39 with 6.5 kernel and there everything works fine. No ~50% regression.

Personally I think it does have something to do with the new scheduler EEVDF.

Kernel 6.7 does not improve anything for my laptop. Kernel 6.8 is not stable in Manjaro repos yet, hence cannot test it on my laptop (production machine).

What about a newer Kernel in Fedora? Still good performance?

Just a blind guess… maybe there is a performance problem in manjaro because of a unmerged .pacnew file?

Try out: pacdiff -s

BTW. Apparmor=1 and security=apparmor was vanished 1-1,5year’s ago from grub, after i saw the new grub.pacnew file.

What does that mean for me? Should I remove them?

just my guess, he’s running in powersave-governor which drops the performance but it’s pointless without any valuable information from the to. even the mandatory inxi info is missing. this is a pointless topic for more than 2 weeks now, just simply wasted time.