On Tue, 2021-06-08 at 13:15 +0200, Juan A. Suarez Romero wrote:
The V3D engine has several hardware performance counters that can of interest for userspace performance analysis tools.
This exposes new ioctls to create and destroy performance monitor objects, as well as to query the counter values.
Each created performance monitor object has an ID that can be attached to CL/CSD submissions, so the driver enables the requested counters when the job is submitted, and updates the performance monitor values when the job is done.
It is up to the user to ensure all the jobs have been finished before getting the performance monitor values. It is also up to the user to properly synchronize BCL jobs when submitting jobs with different performance monitors attached.
Cc: Daniel Vetter daniel@ffwll.ch Cc: David Airlie airlied@linux.ie Cc: Emma Anholt emma@anholt.net To: dri-devel@lists.freedesktop.org Signed-off-by: Juan A. Suarez Romero jasuarez@igalia.com
Here is a link to Mesa MR that implements the support in the driver: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10666
J.A.