#12 [bazzite-nvidia] Major performance degration with 6.7.9-206.fsync.fc39.x86_64
Closed: Fixed by jadams. Opened by jadams.

All performance degraded when booting into latest update with 6.7.9-206.fsync.fc39.x86_64 kernel. Including soft locks and multiple seconds before apps load, running from nvme. GPU accelerated apps that previously ran at >100fps were running at <20fps

Kdiskmark speeds were >3000MB/s read and >2000MB/s write on 6.7.9-203.fsync.fc39.x86_64

Kdiskmark speeds were <2000MB/s read and <500MB/s write on 6.7.9-203.fsync.fc39.x86_64

EDIT: using amd_pstate=active kernel cmdline


inxi output:

System:
  Host: fedora Kernel: 6.7.9-203.fsync.fc39.x86_64 arch: x86_64 bits: 64
    compiler: gcc v: 2.40-14.fc39
  Desktop: KDE Plasma v: 5.27.10 Distro: Fedora Linux 39.20240310.0
    (Kinoite)
Machine:
  Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
  Mobo: ASUSTeK model: ROG CROSSHAIR VIII DARK HERO v: Rev X.0x
    serial: <superuser required> UEFI: American Megatrends v: 4702
    date: 10/20/2023
Battery:
  Device-1: hidpp_battery_0 model: Logitech G305 Lightspeed Wireless Gaming
    Mouse charge: 100% (should be ignored) status: discharging
CPU:
  Info: 16-core model: AMD Ryzen 9 5950X bits: 64 type: MT MCP arch: Zen 3+
    rev: 0 cache: L1: 1024 KiB L2: 8 MiB L3: 64 MiB
  Speed (MHz): avg: 1121 high: 3600 min/max: 550/5084 cores: 1: 3593 2: 550
    3: 550 4: 550 5: 550 6: 550 7: 550 8: 3599 9: 3600 10: 550 11: 550 12: 550
    13: 550 14: 3596 15: 3600 16: 550 17: 550 18: 550 19: 550 20: 550 21: 550
    22: 550 23: 550 24: 550 25: 550 26: 550 27: 550 28: 550 29: 550 30: 550
    31: 3597 32: 550 bogomips: 217602
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: NVIDIA GA102 [GeForce RTX 3090] driver: nvidia v: 550.54.14
    arch: Ampere bus-ID: 0c:00.0
  Display: wayland server: X.org v: 1.20.14 with: Xwayland v: 21.1.99
    compositor: kwin_wayland driver: X: loaded: modesetting,nouveau,nvidia
    unloaded: fbdev,vesa gpu: nvidia resolution: 2560x1440
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 550.54.14
    glx-v: 1.4 direct-render: yes renderer: NVIDIA GeForce RTX 3090/PCIe/SSE2
Network:
  Device-1: Realtek RTL8125 2.5GbE vendor: ASUSTeK driver: r8169 v: kernel
    port: e000 bus-ID: 05:00.0
  IF: enp5s0 state: down mac: f0:2f:74:ad:bc:22
  Device-2: Aquantia AQtion AQC107S NBase-T/IEEE 802.3an Ethernet [Atlantic
    10G] vendor: Sonnet driver: atlantic v: kernel port: N/A bus-ID: 06:00.0
  IF: enp6s0 state: up speed: 10000 Mbps duplex: full mac: 00:30:93:14:10:9f
  Device-3: Intel I211 Gigabit Network vendor: ASUSTeK driver: igb v: kernel
    port: d000 bus-ID: 07:00.0
  IF: enp7s0 state: down mac: f0:2f:74:ad:bc:21
  Device-4: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel bus-ID: 08:00.0
  IF: wlp8s0 state: down mac: be:13:1d:15:22:4e
  IF-ID-1: tailscale0 state: unknown speed: -1 duplex: full mac: N/A
Drives:
  Local Storage: total: 3.73 TiB used: 104.19 GiB (2.7%)
  ID-1: /dev/nvme0n1 vendor: A-Data model: SX8200PNP size: 1.86 TiB
    temp: 44.9 C
  ID-2: /dev/nvme1n1 vendor: A-Data model: SX8200PNP size: 1.86 TiB
    temp: 42.9 C
Partition:
  ID-1: /boot size: 973.4 MiB used: 280.5 MiB (28.8%) fs: ext4
    dev: /dev/nvme1n1p2
  ID-2: /boot/efi size: 598.8 MiB used: 12.4 MiB (2.1%) fs: vfat
    dev: /dev/nvme1n1p1
  ID-3: /var size: 1.86 TiB used: 103.91 GiB (5.5%) fs: btrfs
    dev: /dev/nvme1n1p3
Info:
  Memory: total: 64 GiB note: est. available: 62.7 GiB used: 5.46 GiB (8.7%)
  Processes: 605 Uptime: 14m Init: systemd target: graphical (5)
  Packages: 61 Compilers: clang: 17.0.6 gcc: 13.2.1 Shell: Bash v: 5.2.26
    inxi: 3.3.33
$ cat /proc/cmdline 
BOOT_IMAGE=(hd1,gpt2)/ostree/default-0ef661f08bdfc0dfd2481e2836d3efee2587b6abd3d8eeeb80016b05e49628d0/vmlinuz-6.7.9-203.fsync.fc39.x86_64 rhgb quiet root=UUID=87b92717-aada-4cc0-9fa9-351519eb5b16 rootflags=subvol=root rw ostree=/ostree/boot.0/default/0ef661f08bdfc0dfd2481e2836d3efee2587b6abd3d8eeeb80016b05e49628d0/0 gpu_sched.sched_policy=0 amd_pstate=active

Bazzite is getting downgraded to 6.7.4 and moved to a separate repo.
I personally haven't been able to recreate any performance regression on neither my Laptop (Intel + Nvidia) or my Desktop (AMD + AMD).

What kernel was fine before? With 6.7.9 a lot of patches were added (amd pstate fixes, projectc, oled quirk fixes, amd sfh sensitivity patch).

6.7.9-206.fsync.fc39.x86_64 was the problem kernel, 6.7.9-203.fsync.fc39.x86_64 and 6.7.9-204.fsync.fc39.x86_64 work great.

I assume the issue is with the latest pstate patch since that was the only change.

I had only tested using the kernel cmdline param amd_pstate=active to use the amd_pstate_epp scaling driver and didn't test with the (default) acpi_cpufreq scaling driver

I assume the issue is with the latest pstate patch since that was the only change.

It could also have been ProjectC, which was a new addition after long consideration (see #3).
Though, its been tested for a long time and had been included in other kernels for years.

I don't have a SilverBlue or ublue system on hand on which I could test this, but I believe you should be able to modify the instructions on the copr repo to install 6.7.9-205.fsync which does not include the additional amd pstate fixes.

Kyle mentioned that it seems to be the amd pstate patch.
Since the initial amd pstate patch was included since 6.7.6-201 I think only the changes from the AMD Pstate Fixes And Enhancements series are at fault (https://lore.kernel.org/linux-pm/cover.1706690577.git.perry.yuan@amd.com/).

I've pushed a 207 with it reverted, lets see if it works.
https://copr.fedorainfracloud.org/coprs/build/7153124

by the way, bazzite ships a copy of the kernel in an overlay and with the current plans you are probably going to get the revert to 6.7.4
the copr repo includes instructions on how to replace the main kernel with the fsync one

Took me a long time to test 207 but seems to have fixed the problem. Not sure what the issue with the pstate patch was but it's working well now. Thanks for all the work on this kernel!

Metadata Update from @jadams:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

Metadata