Linux Firmware drops AMD RX6650 XT Performance

Bug #1984004 reported by Ras
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-firmware (Ubuntu)
Invalid
Undecided
Unassigned
Jammy
Fix Released
Undecided
Juerg Haefliger

Bug Description

[Impact]

In e.g. the Unigine benchmark, the linux-firmware packages drops the performance of my AMD RX 6650 XT GPU from 98 FPS in 1080p-high down to 23 FPS. That wasn't a problem in Mint 20.3 with kernel 5.15 (Ubuntu 20.04 based).

Getting the firmware directly from git brings the performance back to about 100 FPS:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
cd linux-firmware
sudo make install
sudo update-initramfs -c -k all

[Fix]

Update amdgpu/dimgrey_cavefish_* firmware files to latest versions from kernel.org.

[Test Case]

See original description.

[Where Problems Could Occur]

Isolated to AMD GPUs that use dimgrey_cavefish firmware blobs.

[Original Description]

Kernel: 5.15.0-43-generic
linux-firmware: 20220329.git681281e4-0ubuntu3.3
Tested with: Mint 21 Cinnamon (Ubuntu 22.04 based)

In e.g. the Unigine benchmark, the linux-firmware packages drops the performance of my AMD RX 6650 XT GPU from 98 FPS in 1080p-high down to 23 FPS. That wasn't a problem in Mint 20.3 with kernel 5.15 (Ubuntu 20.04 based).

Getting the firmware directly from git brings the performance back to about 100 FPS:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
cd linux-firmware
sudo make install
sudo update-initramfs -c -k all

Re-installing the linux-firmware package causes the performance to drop again. So there is a problem with the linux firmware at least for the RX 6650 XT, maybe for the whole RX 6000 series.

The linux-firmware package in Ubuntu 22.04 should be updated.
---
ProblemType: Bug
ApportVersion: 2.20.11-0ubuntu82.1
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC2: daelach 1352 F.... pulseaudio
 /dev/snd/controlC0: daelach 1352 F.... pulseaudio
 /dev/snd/controlC1: daelach 1352 F.... pulseaudio
CasperMD5CheckResult: unknown
CurrentDesktop: X-Cinnamon
Dependencies: firmware-sof-signed 2.0-1ubuntu3 [origin: Ubuntu]
DistroRelease: Linux Mint 21
InstallationDate: Installed on 2020-08-24 (714 days ago)
InstallationMedia: Linux Mint 20 "Ulyana" - Release amd64 20200624
IwConfig:
 lo no wireless extensions.

 enp6s0 no wireless extensions.
MachineType: System manufacturer System Product Name
PackageArchitecture: all
ProcFB: 0 amdgpudrmfb
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-5.15.0-43-generic root=UUID=a4b18dd9-4989-4bf5-8107-e55b8f8f6df4 ro amd_iommu=on iommu=pt quiet loglevel=3 splash
ProcVersionSignature: Ubuntu 5.15.0-43.46-generic 5.15.39
RelatedPackageVersions:
 linux-restricted-modules-5.15.0-43-generic N/A
 linux-backports-modules-5.15.0-43-generic N/A
 linux-firmware 20220329.git681281e4-0ubuntu3.3
RfKill:

Tags: vanessa third-party-packages
Uname: Linux 5.15.0-43-generic x86_64
UnreportableReason: This does not seem to be an official Linux package. Please retry after updating the indexes of available packages. If that does not work, then remove related third party packages and try again.
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
_MarkForUpload: True
dmi.bios.date: 07/25/2022
dmi.bios.release: 5.17
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 4901
dmi.board.asset.tag: Default string
dmi.board.name: ROG STRIX B450-F GAMING
dmi.board.vendor: ASUSTeK COMPUTER INC.
dmi.board.version: Rev 1.xx
dmi.chassis.asset.tag: Default string
dmi.chassis.type: 3
dmi.chassis.vendor: Default string
dmi.chassis.version: Default string
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr4901:bd07/25/2022:br5.17:svnSystemmanufacturer:pnSystemProductName:pvrSystemVersion:rvnASUSTeKCOMPUTERINC.:rnROGSTRIXB450-FGAMING:rvrRev1.xx:cvnDefaultstring:ct3:cvrDefaultstring:skuSKU:
dmi.product.family: To be filled by O.E.M.
dmi.product.name: System Product Name
dmi.product.sku: SKU
dmi.product.version: System Version
dmi.sys.vendor: System manufacturer

Revision history for this message
Juerg Haefliger (juergh) wrote (last edit ):

Please run:
$ apport-collect 1984004

Changed in linux-firmware (Ubuntu):
status: New → Incomplete
tags: added: kern-4121
Revision history for this message
Ras (rasdpm) wrote (last edit ):

After looking into what apport-collect seems to do, i.e. providing crash information: there is no crash. The system is stable even with the problematic linux-firmware version. It's only the GPU performance in gaming that is impacted. Otherwise (desktop, videos, browser), there is no problem.

Edit: installed apport and filed apport-collect 1984004 as requested. This is the system status with the linux-firmware from the kernel git.

Revision history for this message
Ras (rasdpm) wrote : AlsaInfo.txt

apport information

tags: added: apport-collected third-party-packages vanessa
description: updated
Revision history for this message
Ras (rasdpm) wrote : CRDA.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : Lspci.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : Lspci-vt.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : Lsusb.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : Lsusb-t.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : Lsusb-v.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : PaInfo.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : Package.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : ProcEnviron.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : ProcModules.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : PulseList.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : UdevDb.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : WifiSyslog.txt

apport information

Revision history for this message
Ras (rasdpm) wrote : acpidump.txt

apport information

Revision history for this message
Ras (rasdpm) wrote (last edit ):

There was a package update today: 20220329.git681281e4-0ubuntu3.4
Not sure whether it was meant to fix this issue, but it didn't. The attached screenshot is the low 23 FPS framerate with this firmware package.

Revision history for this message
Ras (rasdpm) wrote (last edit ):

By contrast, I pulled in the linux-firmware again afterwards as described in the first posting, and I get around 100 FPS. The GPU temps are also higher, which suggests that the clocking is different.

Juerg Haefliger (juergh)
Changed in linux-firmware (Ubuntu Jammy):
status: New → Incomplete
Changed in linux-firmware (Ubuntu):
status: Incomplete → Invalid
Juerg Haefliger (juergh)
Changed in linux-firmware (Ubuntu Jammy):
status: Incomplete → Triaged
assignee: nobody → Juerg Haefliger (juergh)
Revision history for this message
Juerg Haefliger (juergh) wrote :

Sorry for the late reply. Can you do the following for me?
1) Remove all files in /lib/firmware/amdgpu/.
2) Copy files dimgrey_cavefish_* from https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/amdgpu to /lib/firmware/amdgpu.
3) Reboot and check the GPU performance.
4) Attach the output of dmesg to this bug.

It's unclear to me if amdgpu driver needs anything besides the dimgrey_cavefish firmware blobs but hopefully the dmesg output will tell us.

Revision history for this message
Ras (rasdpm) wrote (last edit ):

Tested:
1) Deleted contents of /lib/firmware/amdgpu , populated it with the 12 dimgrey firmware files, "sudo update-initramfs -c -k all", rebooted. System started, FPS are high (OK).
2) Reinstalled 20220329.git681281e4-0ubuntu3.4 from Synaptic. Updated the 12 dimgrey firmware files, "sudo update-initramfs -c -k all", rebooted. System started, FPS are high (OK).

Revision history for this message
Ras (rasdpm) wrote (last edit ):

Here the dmesg from a boot with only the 12 dimgrey amdgpu firmware files. The ACPI error messages are normal and appear also with the full firmware installation.

Juerg Haefliger (juergh)
Changed in linux-firmware (Ubuntu Jammy):
status: Triaged → In Progress
description: updated
Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello Ras, or anyone else affected,

Accepted linux-firmware into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/linux-firmware/20220329.git681281e4-0ubuntu3.5 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in linux-firmware (Ubuntu Jammy):
status: In Progress → Fix Committed
Revision history for this message
Ras (rasdpm) wrote :

I reinstalled 20220329.git681281e4-0ubuntu3.4 (FPS: low), then installed 20220329.git681281e4-0ubuntu3.5 from the "proposed" repo.

Test result: OK
Tested: 20220329.git681281e4-0ubuntu3.5
FPS: high (100 FPS as expected, fixes the issue)
Videos with VLC and Celluloid: OK
Videos with Firefox and Youtube: OK
dmesg: no error messages (the ACPI errors are normal)

Thank you very much for kindly following through with the issue. :-)

tags: added: verification-done-jammy
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux-firmware - 20220329.git681281e4-0ubuntu3.5

---------------
linux-firmware (20220329.git681281e4-0ubuntu3.5) jammy; urgency=medium

  * REQUEST add meson vdec firmware to arm64 linux-firmware package (LP: #1986743)
    - [Packaging] Include meson/vdec firmware
  * Update firmware for DCN316/GFX1037 (LP: #1983291)
    - amdgpu: update gc_10_3_7_rlc firmware
    - amdgpu: update psp_13_0_8 firmware
    - amdgpu: update dcn_3_1_6_dmcub firmware
    - amdgpu: update DMCUB firmware for DCN 3.1.6
  * Linux Firmware drops AMD RX6650 XT Performance (LP: #1984004)
    - amdgpu: update dimgrey cavefish firmware for 22.10
    - amdgpu: update dimgrey cavefish to release 22.20

 -- Juerg Haefliger <email address hidden> Wed, 31 Aug 2022 13:11:53 +0200

Changed in linux-firmware (Ubuntu Jammy):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for linux-firmware has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.