From: Harish Chegondi <harish.chegondi@intel.com>
To: intel-xe@lists.freedesktop.org
Cc: ashutosh.dixit@intel.com, james.ausmus@intel.com,
felix.j.degrood@intel.com, jose.souza@intel.com,
matias.a.cabral@intel.com, joshua.santosh.ranjan@intel.com,
shubham.kumar@intel.com,
Harish Chegondi <harish.chegondi@intel.com>
Subject: [PATCH v4 0/5] Add support for EU stall sampling
Date: Sun, 13 Oct 2024 23:00:31 -0700 [thread overview]
Message-ID: <cover.1728884074.git.harish.chegondi@intel.com> (raw)
The following patch series add support for EU stall sampling,
a new hardware feature first added in PVC and is being supported
in XE2 and later architecture GPUs. This feature would enable
capturing of EU stall data which include the IP address of the
instruction stalled and various stall reason counts.
Support for this feature is being added into Mesa.
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30142
A new test in the IGT repo:
https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
is also under development to test this feature in the driver. This
patch has undergone basic testing with the new IGT test that is under
development.
Thank You.
v4: Addressed review feedback from v3 including
a. Split the patch into multiple patches (Matt R)
b. Added a new device query to get EU stall info (Ashutosh)
c. Renamed all Dss to xecore (Matt R)
d. Removed buffer size and disable at open input properties. (Matt R)
e. Removed the "_SHIFT" macros (Matt R)
f. Allocate the EU stall buffer only on system memory.
g. Changed the work arounds to OOB (Matt R)
h. Other review feedback.
v3: a. Removed data header and changed read() to return -EIO when data is dropped by the HW.
b. Added a new DRM_XE_OBSERVATION_IOCTL_INFO to query EU stall data record info
c. Added struct drm_xe_eu_stall_data_pvc and struct drm_xe_eu_stall_data_xe2
to xe_drm.h. These declarations would help user space to parse the
EU stall data
d. Addressed other review comments from v2
v2: Rename xe perf layer as xe observation layer (Ashutosh)
Signed-off-by: Harish Chegondi <harish.chegondi@intel.com>
Signed-off-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Harish Chegondi (5):
drm/xe/topology: Add a function to find the index of the last DSS in a
mask
drm/xe/eustall: Introduce API for EU stall sampling
drm/xe/eustall: Implement EU stall sampling APIs
drm/xe/query: Add a device query to get EU stall data information
drm/xe/eustall: Add workaround 22016596838 which applies to PVC.
drivers/gpu/drm/xe/Makefile | 1 +
drivers/gpu/drm/xe/regs/xe_eu_stall_regs.h | 29 +
drivers/gpu/drm/xe/xe_eu_stall.c | 1031 ++++++++++++++++++++
drivers/gpu/drm/xe/xe_eu_stall.h | 60 ++
drivers/gpu/drm/xe/xe_gt.c | 6 +
drivers/gpu/drm/xe/xe_gt_topology.c | 9 +
drivers/gpu/drm/xe/xe_gt_topology.h | 3 +
drivers/gpu/drm/xe/xe_gt_types.h | 3 +
drivers/gpu/drm/xe/xe_observation.c | 14 +
drivers/gpu/drm/xe/xe_query.c | 30 +
drivers/gpu/drm/xe/xe_trace.h | 35 +
drivers/gpu/drm/xe/xe_wa_oob.rules | 1 +
include/uapi/drm/xe_drm.h | 62 ++
13 files changed, 1284 insertions(+)
create mode 100644 drivers/gpu/drm/xe/regs/xe_eu_stall_regs.h
create mode 100644 drivers/gpu/drm/xe/xe_eu_stall.c
create mode 100644 drivers/gpu/drm/xe/xe_eu_stall.h
--
2.45.1
next reply other threads:[~2024-10-14 6:00 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-14 6:00 Harish Chegondi [this message]
2024-10-14 6:00 ` [PATCH v4 1/5] drm/xe/topology: Add a function to find the index of the last DSS in a mask Harish Chegondi
2024-10-14 21:26 ` Dixit, Ashutosh
2024-10-16 3:44 ` Harish Chegondi
2024-10-18 21:26 ` Matt Roper
2024-10-14 6:00 ` [PATCH v4 2/5] drm/xe/eustall: Introduce API for EU stall sampling Harish Chegondi
2024-10-14 22:21 ` Dixit, Ashutosh
2024-10-18 22:03 ` Matt Roper
2024-11-14 16:23 ` Umesh Nerlige Ramappa
2024-11-19 23:59 ` Harish Chegondi
2024-11-20 19:04 ` Dixit, Ashutosh
2024-11-21 1:05 ` Umesh Nerlige Ramappa
2024-11-21 3:18 ` Dixit, Ashutosh
2024-11-22 18:18 ` Dixit, Ashutosh
2024-11-27 18:47 ` Harish Chegondi
2024-11-29 4:31 ` Kumar, Shubham
2024-11-29 4:35 ` Kumar, Shubham
2024-10-14 6:00 ` [PATCH v4 3/5] drm/xe/eustall: Implement EU stall sampling APIs Harish Chegondi
2024-10-18 23:31 ` Matt Roper
2024-10-14 6:00 ` [PATCH v4 4/5] drm/xe/query: Add a device query to get EU stall data information Harish Chegondi
2024-10-14 21:39 ` Dixit, Ashutosh
2024-10-14 6:00 ` [PATCH v4 5/5] drm/xe/eustall: Add workaround 22016596838 which applies to PVC Harish Chegondi
2024-10-14 6:05 ` ✓ CI.Patch_applied: success for Add support for EU stall sampling Patchwork
2024-10-14 6:05 ` ✗ CI.checkpatch: warning " Patchwork
2024-10-14 6:06 ` ✓ CI.KUnit: success " Patchwork
2024-10-14 6:18 ` ✓ CI.Build: " Patchwork
2024-10-14 6:20 ` ✗ CI.Hooks: failure " Patchwork
2024-10-14 6:22 ` ✓ CI.checksparse: success " Patchwork
2024-10-14 6:47 ` ✓ CI.BAT: " Patchwork
2024-10-14 7:54 ` ✗ CI.FULL: failure " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1728884074.git.harish.chegondi@intel.com \
--to=harish.chegondi@intel.com \
--cc=ashutosh.dixit@intel.com \
--cc=felix.j.degrood@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=james.ausmus@intel.com \
--cc=jose.souza@intel.com \
--cc=joshua.santosh.ranjan@intel.com \
--cc=matias.a.cabral@intel.com \
--cc=shubham.kumar@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.