From: Philip Yang <Philip.Yang@amd.com>
To: <amd-gfx@lists.freedesktop.org>
Cc: Philip Yang <Philip.Yang@amd.com>, felix.kuehling@amd.com
Subject: [PATCH v3 0/8] HMM profiler interface
Date: Tue, 15 Feb 2022 16:22:39 -0500 [thread overview]
Message-ID: <20220215212247.16228-1-Philip.Yang@amd.com> (raw)
This implements KFD profiling APIs to expose HMM migration and
recoverable page fault profiling data. The ROCm profiler will shared
link with application, to collect and expose the profiling data to
application developers to tune the applications based on how the address
range attributes affect the behavior and performance. Kernel perf and
ftrace requires superuser permission to collect data, it is not suitable
for ROCm profiler.
The profiling data is per process per device event uses the existing SMI
(system management interface) event API. Each event log is one line of
text with the event specific information.
User space usage example for rocm-smi lib and tools under review:
https://github.com/RadeonOpenCompute/rocm_smi_lib/pull/96
v3:
* Changes from Felix's review
v2:
* Keep existing events behaviour
* Use ktime_get_boottime_ns() as timestamp to correlate with other APIs
* Use compact message layout, stick with existing message convention
* Add unmap from GPU event
Philip Yang (8):
drm/amdkfd: Add KFD SMI event IDs and triggers
drm/amdkfd: Correct SMI event read size
drm/amdkfd: Enable per process SMI event
drm/amdkfd: Add GPU recoverable fault SMI event
drm/amdkfd: Add migration SMI event
drm/amdkfd: Add user queue eviction restore SMI event
drm/amdkfd: Add unmap from GPU SMI event
drm/amdkfd: Bump KFD API version for SMI profiling event
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 2 +-
.../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 12 +-
drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 4 +-
drivers/gpu/drm/amd/amdkfd/kfd_device.c | 4 +-
drivers/gpu/drm/amd/amdkfd/kfd_migrate.c | 53 +++--
drivers/gpu/drm/amd/amdkfd/kfd_migrate.h | 5 +-
drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 2 +-
drivers/gpu/drm/amd/amdkfd/kfd_process.c | 15 +-
drivers/gpu/drm/amd/amdkfd/kfd_smi_events.c | 188 ++++++++++++++++--
drivers/gpu/drm/amd/amdkfd/kfd_smi_events.h | 21 +-
drivers/gpu/drm/amd/amdkfd/kfd_svm.c | 68 +++++--
drivers/gpu/drm/amd/amdkfd/kfd_svm.h | 2 +-
include/uapi/linux/kfd_ioctl.h | 41 +++-
13 files changed, 353 insertions(+), 64 deletions(-)
--
2.17.1
next reply other threads:[~2022-02-15 21:23 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-15 21:22 Philip Yang [this message]
2022-02-15 21:22 ` [PATCH v3 1/8] drm/amdkfd: Add KFD SMI event IDs and triggers Philip Yang
2022-02-15 21:22 ` [PATCH v3 2/8] drm/amdkfd: Correct SMI event read size Philip Yang
2022-02-15 21:22 ` [PATCH v3 3/8] drm/amdkfd: Enable per process SMI event Philip Yang
2022-02-15 21:22 ` [PATCH v3 4/8] drm/amdkfd: Add GPU recoverable fault " Philip Yang
2022-02-15 21:22 ` [PATCH v3 5/8] drm/amdkfd: Add migration " Philip Yang
2022-02-15 21:22 ` [PATCH v3 6/8] drm/amdkfd: Add user queue eviction restore " Philip Yang
2022-02-15 21:22 ` [PATCH v3 7/8] drm/amdkfd: Add unmap from GPU " Philip Yang
2022-02-15 21:22 ` [PATCH v3 8/8] drm/amdkfd: Bump KFD API version for SMI profiling event Philip Yang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220215212247.16228-1-Philip.Yang@amd.com \
--to=philip.yang@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=felix.kuehling@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox