Open ngraham20 opened 1 month ago
I'm having this exact same issue on my Thinkpad P16 Gen 2 with Intel i9-13950HX vPro and a dedicated Nvidia GPU, though it only manifests after the laptop has been running for around an hour while on Power Saver mode. From my experience this also causes the following additional issues:
This appears to happen on both 40.20241013 and 40.20241014 and does not happen if the laptop is on High Performance mode (except for the shutdown hang due to those two services hanging, which might be another bug introduced in 40.20241013).
Transcript from Discord from Turtlewit, might be of interest:
I have been experiencing a similar issue, and I believe I found the bug causing it, and potentially a workaround. The issue I observed was that my system performed normally when it starts on either powersave or balanced, but performance would degrade significantly if I switched to performance, then back to either powersave or balanced (frequent long hitches when interacting with the taskbar, start menu, launching programs, etc). Performance would not improve until I switched back to performance or rebooted my system. It seems this is caused by a bug with how TuneD manages sysctl variables in the sysctl plugin. The default throughput-performance profiles sets the variables vm.dirty_ratio and vm.dirty_background_ratio. However, when either of these variables are set, they set vm.dirty_bytes and vm.dirty_background_bytes to 0 respectively, as the variables are incompatible. When TuneD switches to a different profile, it restores the values of the _ratio variables to 0, but it doesn't restore the original values of the _bytes variables. Bazzite by default sets the _bytes variables and not the _ratio variables (in /usr/lib/sysctl.d/65-memory.conf). The result of all of this is that all 4 variables are set to 0 when switching away from the performance profile, resulting in severely degraded performance. The workaround I am using is to override the throughput-performance profile with a custom profile. I created a new directory and config file at /etc/tuned/profiles/throughput-performance-custom/tuned.conf with these contents:
[main] include=throughput-performance
[sysctl] replace=1 vm.dirty_bytes = 0 vm.dirty_ratio = 40 vm.dirty_background_bytes = 0 vm.dirty_background_ratio = 10 vm.swappiness=10 net.core.somaxconn=>2048
>
> replace=1 is unfortunately necessary, as the order in which the variables are set is important. This means future updates to the "sysctl" section of the default performance profile will not be propagated to this profile while the profile override exists.
> In order for desktop environments to use this profile as the new default performance profile, /etc/tuned/ppd.conf must be updated to change the performance= line to:
> performance=throughput-performance-custom
>
> If you named your profile differently, replace throughput-performance-custom with the name of your custom profile.
> Edit: forgot to mention, you should restart your system after adding the new profile and editing ppd.conf. I found restarting tuned-ppd with systemctl didn't work when I tried it, I could only restart it with a system reboot
> There is a pull request open to fix this issue in the TuneD github which you can follow here: https://github.com/redhat-performance/tuned/pull/688
I tried that `throughput-performance-custom` profile, and seems it works(?), laptop doesn't suffer massive slow down switching between balanced/perfomance.
Describe the bug
When I set the power profile to anything other than
performance
, my PC grinds to a halt. Basic functions like opening the application menu take > 10 secondsWhat did you expect to happen?
When
powerprofilesctl
was the power manager, I could usepower saver
mode reliably for all tasks except heavy gaming. This change made it so evenbalanced
is unusable entirely.Output of
rpm-ostree status
State: idle Deployments: ● ostree-image-signed:docker://ghcr.io/ublue-os/bazzite:stable Digest: sha256:023e98d12a3f68596c7d99a059a86977d873ac17c7bd105dc770d0cc598545c9 Version: 40.20241014 (2024-10-15T08:59:50Z) LayeredPackages: firefox plasma-workspace-x11 LocalPackages: 1password-8.10.44-1.x86_64 vivaldi-stable-6.9.3447.41-1.x86_64
ostree-image-signed:docker://ghcr.io/ublue-os/bazzite:stable Digest: sha256:77b0024fbac46dec3a1957d51e1d4b1570e8c1b9300743b5aa651b3e6af21a9f Version: 40.20240930.0 (2024-09-30T15:28:49Z) LayeredPackages: firefox plasma-workspace-x11 LocalPackages: 1password-8.10.44-1.x86_64 vivaldi-stable-6.9.3447.41-1.x86_64
Hardware
Laptop 16 (AMD Ryzen 7040 Series) Framework 16 AMD 7940HS w/ 7700S dGPU
Extra information or context
No response