This patchset exposes GPU usages stats both globally and per-file descriptor. The first patch exposes the accumulated amount of active time per client through the fdinfo infrastructure. The amount of active time is exposed for each V3D queue. Moreover, it exposes the number of jobs submitted to each queue. The second patch exposes the accumulated amount of active time for each V3D queue, independent of the client. This data is exposed through the debugfs interface. With these patches, it is possible to calculate the GPU usage percentage per queue globally and per-file descriptor. * Example fdinfo output: $ cat /proc/1140/fdinfo/4 pos: 0 flags: 02400002 mnt_id: 24 ino: 209 drm-driver: v3d drm-client-id: 44 drm-engine-bin: 1661076898 ns v3d-jobs-bin: 19576 jobs drm-engine-render: 31469427170 ns v3d-jobs-render: 19575 jobs drm-engine-tfu: 5002964 ns v3d-jobs-tfu: 13 jobs drm-engine-csd: 188038329691 ns v3d-jobs-csd: 250393 jobs drm-engine-cache_clean: 27736024038 ns v3d-jobs-cache_clean: 250392 job * Example gputop output: DRM minor 128 PID bin render tfu csd cache_clean NAME 1140 |▎ ||██▋ || ||█████████████▍ ||█▋ | computecloth 1158 |▍ ||████████▉ || || || | gears 1002 |▏ ||█▎ || || || | chromium-browse Best Regards, - Maíra Maíra Canal (2): drm/v3d: Implement show_fdinfo() callback for GPU usage stats drm/v3d: Expose the total GPU usage stats on debugfs drivers/gpu/drm/v3d/v3d_debugfs.c | 27 ++++++++++++++++++++++++ drivers/gpu/drm/v3d/v3d_drv.c | 30 +++++++++++++++++++++++++- drivers/gpu/drm/v3d/v3d_drv.h | 26 +++++++++++++++++++++++ drivers/gpu/drm/v3d/v3d_gem.c | 6 +++++- drivers/gpu/drm/v3d/v3d_irq.c | 33 +++++++++++++++++++++++++++++ drivers/gpu/drm/v3d/v3d_sched.c | 35 +++++++++++++++++++++++++++++++ 6 files changed, 155 insertions(+), 2 deletions(-) -- 2.41.0