-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AMD GPU Not Reading With Mesa Drviers #99
Comments
Hi, thanks for reporting the issue. |
I am using Fedora 39. |
For reference I tried runnning on Ubuntu 23.10, no dice. Installing the 22.04 LTS and amdgpu drivers from the radeon repo to see if that helps. |
Thank you for the additional information and testing. Unfortunately the only AMD GPU that I have is the integrated one of my Ryzen laptop, so I'm quite limited in regards to testing AMD GPUs. I'm partially reworking the GPU part of Resources anyway right now, could you check out the |
|
Some stuff like memory frequency is apparently not exposed by integrated GPUs, the iGPU in my Ryzen laptop also doesn't expose its memory frequency (which sort of makes sense since it's using normal system RAM anyway). No power usage and GPU usage is odd though. Do you mind installing nvtop and check whether it sees more stats? You could also try to build the |
Could you send me the debug logs form stdout? |
Where would I find that? |
In the terminal where you've run |
Okay the reason I asked is because my terminal output is pretty darn uneventful. |
nvtop is showing memory frequency as well as GPU usage but no power. |
Great to see! Do you mind testing a few things since I don't have a modern dedicated AMD GPU? :)
|
Okay I fixed my hardware acceleration, which is now running in VLC, and it is not registering on Resources with the same 0% output |
So I've just found out why Resources doesn't find the proper name of your GPU: it turns out that the library I was using to match PCI IDs to devices is not reading from the local PCI ID database file on your machine, it has its own snapshot of pci.ids, which is unfortunately over a year old and of course didn't include the RX 7800 XT. Guess I'm gonna have to write that part myself. Regarding hardware acceleration, on my Ryzen laptop I've never gotten hardware-accelerated video decoding to work in VLC and only after tinkering in Firefox, have you confirmed with nvtop that it works? It does work for me in Clapper though. |
I have confirmed it works based on the insanely reduced CPU usage, but I can install nvtop to double check |
Accelerated decoding is not being read, however, every other issue has been fixed. CLI output: dawson@localhost-live:~/Apps/resources$ flatpak-builder --run flatpak_app build-aux/net.nokyan.Resources.Devel.json resources
INFO resources::application > Resources (net.nokyan.Resources.Devel)
INFO resources::application > Version: 1.2.1-210db33 (Devel)
INFO resources::application > Datadir: /app/share/resources
DEBUG resources::application::imp > GtkApplication<Application>::startup
Fontconfig error: Cannot load config file "/run/host/font-dirs.xml": No such file: /run/host/font-dirs.xml
DEBUG resources::application::imp > GtkApplication<Application>::activate
(resources:2): Gtk-WARNING **: 11:26:00.949: Unable to acquire the address of the accessibility bus: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: org.freedesktop.DBus.Error.ServiceUnknown. If you are attempting to run GTK without a11y support, GTK_A11Y should be set to 'none'.
DEBUG resources::utils::pci > Parsing pci.ids…
DEBUG resources::utils::pci > Successfully parsed pci.ids
DEBUG resources::utils::gpu > Found GPU "AMD Radeon RX 7800 XT" at PCI slot 0000:0a:00.0 with PCI ID 1002:747e
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/nvme0n1
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/sdb
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/nvme1n1
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/sda
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/enp4s0
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/enp7s0
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/wlo1
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/vmnet1
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/vmnet8 |
Thanks for testing, does displaying per-process VRAM usage and GPU usage work? In Resources' settings, you should be able to enable "Video memory" for both processes and applications. |
Logs: dawson@localhost-live:~/Apps/resources$ flatpak-builder --run flatpak_app build-aux/net.nokyan.Resources.Devel.json resources
INFO resources::application > Resources (net.nokyan.Resources.Devel)
INFO resources::application > Version: 1.2.1-969dcce (Devel)
INFO resources::application > Datadir: /app/share/resources
DEBUG resources::application::imp > GtkApplication<Application>::startup
Fontconfig error: Cannot load config file "/run/host/font-dirs.xml": No such file: /run/host/font-dirs.xml
DEBUG resources::application::imp > GtkApplication<Application>::activate
(resources:2): Gtk-WARNING **: 10:28:22.545: Unable to acquire the address of the accessibility bus: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: org.freedesktop.DBus.Error.ServiceUnknown. If you are attempting to run GTK without a11y support, GTK_A11Y should be set to 'none'.
DEBUG resources::utils::pci > Parsing pci.ids…
DEBUG resources::utils::pci > Successfully parsed pci.ids
DEBUG resources::utils::gpu > Found GPU "AMD Radeon RX 7800 XT" at PCI slot 0000:0a:00.0 with PCI ID 1002:747e
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/nvme0n1
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/sdb
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/nvme1n1
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/sda
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/wlo1
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/enp4s0
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/enp7s0
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/vmnet1
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/br-14c42a1c9335
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/vmnet8
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/docker0 I pulled and compiled from the gpu-fix branch since it has your latest commits. |
Thanks, the screenshots help a lot! Since Resources is also unable to get per-process VRAM and GPU usage stats in your screenshots, the issue seems to be with reading per-process GPU-related stats in general, which is necessary for encoder and decoder stats as they can't be accessed centrally per-GPU (for non-NVIDIA GPUs) but instead need to be collected per process and then summed up for the GPU(s). Since nvtop has no problems, it's got to be a problem with Resources. I'll keep digging for the problem. ^^ |
Could you run the following bash snippet? |
I believe I found the issue: your GPU is on your PCI slot 0000:0a:00.0, the regex I wrote to detect PCI IDs didn't account for hexadecimal numbers, only decimal numbers. I pushed the fix in gpu-fix. Could you test it? :) |
Great to see! In your earlier screenshots, nvtop also shows the encoder usage going up, so I did some digging and apparently with RDNA 3, AMD unified the encoder and decoder usages (Syllo/nvtop#218). Resources can already show a unified enc/dec graph because it's unified for Intel aswell, I'll see if I can figure something out to distinguish between post-RDNA 3 and pre-RDNA 3 GPUs. |
Thanks for reporting. It looks like Resources doesn't recognize the GPU as NVIDIA and tries to use fallback methods for GPU data. Could you send the debug logs for the newer, non-production Resources? |
I've changed the GPU categorization logic in the |
It finds the GPU now, however, it appears to not find the Video Encoding usage. dawson@dawsons-desktop-fedora:~/Apps/Git/resources$ flatpak-builder --run flatpak_app build-aux/net.nokyan.Resources.Devel.json resources
INFO resources::application > Resources (net.nokyan.Resources.Devel)
INFO resources::application > Version: 1.2.1-01d74b6 (Devel)
INFO resources::application > Datadir: /app/share/resources
DEBUG resources::application::imp > GtkApplication<Application>::startup
Fontconfig error: Cannot load config file "/run/host/font-dirs.xml": No such file: /run/host/font-dirs.xml
DEBUG resources::application::imp > GtkApplication<Application>::activate
(resources:2): Gtk-WARNING **: 07:30:41.956: Unable to acquire the address of the accessibility bus: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: org.freedesktop.DBus.Error.ServiceUnknown. If you are attempting to run GTK without a11y support, GTK_A11Y should be set to 'none'.
DEBUG resources::utils::pci > Parsing pci.ids…
DEBUG resources::utils::pci > Successfully parsed pci.ids
DEBUG resources::utils::gpu::nvidia > Successfully connected to NVML
DEBUG resources::utils::gpu > Found GPU "NVIDIA GeForce RTX 3080" at PCI slot 0000:08:00.0 with PCI ID 10de:2206
(resources:2): Gtk-CRITICAL **: 07:30:43.431: Unable to connect to the accessibility bus at 'unix:path=/run/user/1000/at-spi/bus_0': Could not connect: No such file or directory
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/nvme0n1
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/sdb
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/nvme1n1
DEBUG resources::ui::window > A drive has been added (or turned visible): /sys/block/sda
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/wlo1
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/enp4s0
DEBUG resources::ui::window > A network interface has been added (or turned visible): /sys/class/net/enp7s0 |
Odd that encoder/decoder usage doesn't work. Does nvtop show it correctly? |
The decoder not showing information was my fault. I was switching between my AMD and Nvidia GPU and I forgot to install the correct lib-va driver for Nvidia. Works as intended. However, I have run into a new issue that I am unsure is the result of your software. Any idea why the CPU frequency isn't being reported? Same issue on the production release. |
Can you run |
rchitecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 48 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 16
On-line CPU(s) list: 0-15
Vendor ID: AuthenticAMD
Model name: AMD Ryzen 7 5800X 8-Core Processor
CPU family: 25
Model: 33
Thread(s) per core: 2
Core(s) per socket: 8
Socket(s): 1
Stepping: 0
BogoMIPS: 7586.01
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mc
a cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall n
x mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_go
od nopl nonstop_tsc cpuid extd_apicid aperfmperf rapl p
ni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 x2api
c movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_le
gacy svm extapic cr8_legacy abm sse4a misalignsse 3dnow
prefetch osvw ibs skinit wdt tce topoext perfctr_core p
erfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw
_pstate ssbd mba ibrs ibpb stibp vmmcall fsgsbase bmi1
avx2 smep bmi2 erms invpcid cqm rdt_a rdseed adx smap c
lflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves cq
m_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local user_sh
stk clzero irperf xsaveerptr rdpru wbnoinvd arat npt lb
rv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid
decodeassists pausefilter pfthreshold avic v_vmsave_vml
oad vgif v_spec_ctrl umip pku ospke vaes vpclmulqdq rdp
id overflow_recov succor smca fsrm debug_swap
Virtualization features:
Virtualization: AMD-V
Caches (sum of all):
L1d: 256 KiB (8 instances)
L1i: 256 KiB (8 instances)
L2: 4 MiB (8 instances)
L3: 32 MiB (1 instance)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0-15
Vulnerabilities:
Gather data sampling: Not affected
Itlb multihit: Not affected
L1tf: Not affected
Mds: Not affected
Meltdown: Not affected
Mmio stale data: Not affected
Retbleed: Not affected
Spec rstack overflow: Mitigation; Safe RET
Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl
Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer
sanitization
Spectre v2: Mitigation; Retpolines, IBPB conditional, IBRS_FW, STIB
P always-on, RSB filling, PBRSB-eIBRS Not affected
Srbds: Not affected
Tsx async abort: Not affected
|
Can you try the |
Closing this because it has been resolved with Resources 1.3 (still not on Flathub unfortunately). If there's still an issue related to this, don't hesitate to reopen :) |
I think I'm having a similar issue, actually! At least, there are a number of stats that are not reported for my AMD GPU, while The missing stats include:
Why does this happen, btw? Is there anything users can do? The database mentioned earlier doesn't seem to include my GPU. I also wonder what Happy to help debugging :) GPU Info
Software versions
|
Hi, could you please run |
Here you go: Debug log
I'm guessing resources ultimately retrieves info from the devices in My GPU is present as $ cat /sys/class/hwmon/hwmon11/name
amdgpu
$ ls /sys/class/hwmon/hwmon11/
device@ freq1_label in0_label in1_label power/ power1_input subsystem@ temp1_label
freq1_input in0_input in1_input name power1_average power1_label temp1_input uevent |
Is this standard default behavior? I looked through your documentation and couldn't find anything about AMD graphics cards. My GPU is a Radeon 7800XT.
Radeontop Output:
The text was updated successfully, but these errors were encountered: