gpuvis
gpuvis copied to clipboard
Linux kernel trace events changes
Hi,
I'm working on improving the gpu_scheduler trace events.
The events are changed to make fence tracking easier (context + seqno are printed consistently across events) and to contain the dependencies information (drm_sched_job_wait_dep already provided this, but partially).
Lastly, the device information to know which GPU is executing the job is now available as well.
The latest version of the patchset is currently up for review here: https://lists.freedesktop.org/archives/dri-devel/2024-June/457100.html - feel free to chime in and offer some feedback.
FWIW here's an short capture on a 2 GPUs system:
umr:cs0-6498 [016] ..... 735.008761: drm_sched_job: id=51757, fence=(context:7914, seqno:920), ring=gfx_0.0.0, job count:0, hw job count:1, dependencies:{}
kworker/u128:0-11 [026] ..... 735.008769: drm_run_job: dev=0000:0e:00.0, id=328, fence=(context:8442, seqno:145), ring=gfx_0.0.0, job count:0, hw job count:1
kworker/u128:2-2108 [027] ..... 735.008776: drm_run_job: dev=0000:0b:00.0, id=51756, fence=(context:664, seqno:17099), ring=gfx_0.0.0, job count:0, hw job count:2
Xorg:cs0-2504 [000] ..... 735.008782: drm_sched_job: id=51758, fence=(context:664, seqno:17100), ring=gfx_0.0.0, job count:0, hw job count:2, dependencies:{}
glxgears:cs0-6627 [019] ..... 735.008788: drm_sched_job: id=427, fence=(context:8446, seqno:144), ring=sdma0, job count:0, hw job count:0, dependencies:{(context:8442, seqno:145)}
kworker/u128:2-2108 [027] ..... 735.008796: drm_sched_job_wait_dep: job ring=sdma0, fence_context=8446, id=427, depends fence=(context:8442, seqno:145)
<idle>-0 [026] d.h2. 735.008796: drm_sched_process_job: fence=(context:664, seqno:17098) signaled
kworker/u128:2-2108 [027] ..... 735.008801: drm_sched_job_wait_dep: job ring=gfx_0.0.0, fence_context=7914, id=51757, depends fence=(context:664, seqno:17097)
kworker/u128:2-2108 [027] ..... 735.008803: drm_run_job: dev=0000:0b:00.0, id=51757, fence=(context:7914, seqno:920), ring=gfx_0.0.0, job count:0, hw job count:2
<idle>-0 [026] d.h2. 735.008840: drm_sched_process_job: fence=(context:664, seqno:17099) signaled