[PATCH v6 0/7] Improve gpu_scheduler trace events + uAPI
Pierre-Eric Pelloux-Prayer
pierre-eric.pelloux-prayer at amd.com
Thu Nov 14 10:01:03 UTC 2024
Hi,
The initial goal of this series was to improve the drm and amdgpu
trace events to be able to expose more of the inner workings of
the scheduler and drivers to developers via tools.
Then, the series evolved to become focused only on gpu_scheduler.
The changes around vblank events will be part of a different
series, as well as the amdgpu ones.
Moreover Sima suggested to make some trace events stable uAPI,
so tools can rely on them long term.
The first patches extend and cleanup the gpu scheduler events.
The last one adds a documentation entry in drm-uapi.rst.
Changes since v5:
* Addressed Christian, Maíra and Lucas' comments.
* Added patch 1, 2, 6 to include drm_client_id to the events. This
is required when a single app uses multiple fds for the same device.
* Validated that the patches don't break gpuvis
Useful links:
- userspace tool using the updated events:
https://gitlab.freedesktop.org/tomstdenis/umr/-/merge_requests/37
- v5:
https://lists.freedesktop.org/archives/dri-devel/2024-June/457827.html
Pierre-Eric Pelloux-Prayer (7):
drm/debugfs: output client_id in in drm_clients_info
drm/sched: store the drm client_id in drm_sched_fence
drm/sched: add device name to the drm_sched_process_job event
drm/sched: cleanup gpu_scheduler trace events
drm/sched: trace dependencies for gpu jobs
drm/sched: add the drm_client_id to the drm_sched_run/exec_job events
drm/doc: document some tracepoints as uAPI
Documentation/gpu/drm-uapi.rst | 19 +++
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 2 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 3 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 8 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_job.h | 3 +-
drivers/gpu/drm/drm_debugfs.c | 10 +-
drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c | 2 +-
drivers/gpu/drm/imagination/pvr_job.c | 2 +-
drivers/gpu/drm/imagination/pvr_queue.c | 5 +-
drivers/gpu/drm/imagination/pvr_queue.h | 2 +-
drivers/gpu/drm/lima/lima_gem.c | 2 +-
drivers/gpu/drm/lima/lima_sched.c | 6 +-
drivers/gpu/drm/lima/lima_sched.h | 3 +-
drivers/gpu/drm/msm/msm_gem_submit.c | 8 +-
drivers/gpu/drm/nouveau/nouveau_sched.c | 3 +-
drivers/gpu/drm/panfrost/panfrost_drv.c | 2 +-
.../gpu/drm/scheduler/gpu_scheduler_trace.h | 121 ++++++++++++++----
drivers/gpu/drm/scheduler/sched_entity.c | 8 +-
drivers/gpu/drm/scheduler/sched_fence.c | 4 +-
drivers/gpu/drm/scheduler/sched_main.c | 8 +-
drivers/gpu/drm/v3d/v3d_submit.c | 2 +-
drivers/gpu/drm/xe/xe_sched_job.c | 3 +-
include/drm/gpu_scheduler.h | 12 +-
23 files changed, 181 insertions(+), 57 deletions(-)
--
2.43.0
More information about the dri-devel
mailing list