-
Notifications
You must be signed in to change notification settings - Fork 81
AMDXDNA support #431
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
base: main
Are you sure you want to change the base?
AMDXDNA support #431
Conversation
src/utils/process.rs
Outdated
| .args(["--host", proxy_path.as_str()]) | ||
| .args([ | ||
| &format!( | ||
| "--env=RUST_LOG={}", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see error: unexpected argument '--env' found in the output.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you please send me the whole output and when it's written to it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
error: unexpected argument '--env' found
Usage: resources-processes [OPTIONS]
For more information, try '--help'.
and nothing in apps/processes tabs after that.
I'll submit a PR, there are multiple issues other than that.
1. fdinfo collection only accepted DRM devices (major 226), but amdxdna uses the accel subsystem (major 261) 2. Driver name in fdinfo is "amdxdna_accel_driver", not "amdxdna" 3. Memory usage was unavailable because amdxdna doesn't expose it via sysfs, only via per-process fdinfo 4. There is no "--env" parameter in resources-processes This change was tested against the latest release of amdxdna driver, which is massively different from the driver shipped in Linux kernel. Maybe older driver uses "amdxdna" instead of "amdxdna_accel_driver". However, as new software works only with the new driver, I don't even think it is possible to test something with original driver. More details: https://wiki.gentoo.org/wiki/User:Lockal/AMDXDNA#Kernel Another note: Temperature, power, and frequency remain N/A as amdxdna does not expose hwmon interface (at least for my Asus ROG Z13 device). Maybe it makes sense to remove these fields from UI.
Driver exposes 2 values via DRM_AMDXDNA_QUERY_CLOCK_METADATA: "MP-NPU clock" and "H clock". Device has multiple power profiles, which switches both of them. Examples: ``` [Power Mode] Mode ID: 1 Mode Name: POWERSAVER [Clock Frequencies] MP-NPU Clock: 396 MHz H Clock: 792 MHz ``` ``` [Power Mode] Mode ID: 4 Mode Name: TURBO [Clock Frequencies] MP-NPU Clock: 1267 MHz H Clock: 1800 MHz ``` There is no description about these abbreviations, but it looks like H is hardware, MP is memory port, so these values are mapped to core_frequency/memory_frequency functions.
Fix amdxdna collection and aggregation
Resolves #417