Processwatch: Add support for AMD Zen processors#13
Merged
Conversation
Processwatch uses software pmu cpu-clock event if it fails to detect
the architecture. Although it works, cpu-clock event is imprecise. On
AMD, ibs_op// pmu provides precise sampling, so port Processwatch to
use ibs_op// on AMD.
Notes:
o Processwatch with systemwide mode is supported with all versions of
kernel. However, IBS on Linux supports per-process sampling only with
v6.2 and later kernels. Thus processwatch with per-process mode
(--pid=[pid] / -p option) is supported only with v6.2 and later.
o Processwatch fails to run with "WARNING: CPU xxx is offline." on AMD
machines where some cores fused off in the hw. The issue is with how
kernel exposes number of possible cpus in the sysfs. Below kernel
patches fixed the issue.
v5.16 aa06e20f1be6 ("x86/ACPI: Don't add CPUs that are not online
capable")
v6.3 e2869bd7af60 ("x86/acpi/boot: Do not register processors that
cannot be onlined for x2APIC")
o Currently IBS is not supported in KVM guest and thus Processwatch
falls back to cpu-clock event when run inside the KVM guest.
o TMA support is not added for AMD.
Signed-off-by: Ravi Bangoria <ravi.bangoria@amd.com>
matthew-olson-intel
approved these changes
May 1, 2024
Contributor
matthew-olson-intel
left a comment
There was a problem hiding this comment.
This looks great! Thanks for doing this. I don't have access to a system to test it right now, but I'll take your word for it ;D
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Processwatch uses software pmu cpu-clock event if it fails to detect the architecture. Although it works, cpu-clock event is imprecise. On AMD, ibs_op// pmu provides precise sampling, so port Processwatch to use ibs_op// on AMD platforms.