Proposed Changes To Intel GPU Top Would Make It A More Useful Utility
Among the developer/enthusiast tool-set of the Intel open-source Linux graphics driver developers has been Intel GPU Top (the command intel_gpu_top) that is distributed with the Intel-GPU-Tools collection. This GPU information utility inspired by Linux's well known top command reports for Intel HD/UHD/Iris Graphics hardware the usage information, but does require root privileges to operate. Intel GPU Top is about to get a major overhaul.
Intel GPU Top hasn't been the most useful utility particularly among non-developers, but Intel's Tvrtko Ursulin is proposing a set of changes he entitled the "21st century intel_gpu_top." These 13 patches add a lot of useful reporting to the command-line based utility.
What the revised Intel GPU Top would roughly look like.
The patches enable intel_gpu_top to report overall GPU load averages based on queue depths and also per-DRM client per-engine business. The revised Intel GPU Top would report better overall engine business from the render / blitter / video engines and also this reporting on a per-client/application basis.
But besides the intel_gpu_top patches needing to be merged to the Intel GPU Tools, this work also partially depends on some yet-to-be-merged kernel patches for exposing a new sysfs interface for per-client stats and additional PMU performance counter. (I'm personally interested as well as in the new per-client sysfs information reporting and may be useful for integration to the statistics reporting with the Phoronix Test Suite.)
The patches can be found for now on intel-gfx. This utility only works for Intel graphics hardware and unfortunately I am not aware of any other Linux driver/utility offering per-client GPU usage reporting.