[PATCH v15 0/6] drm/xe/pmu: PMU interface for Xe
Lucas De Marchi
lucas.demarchi at intel.com
Thu Jan 23 04:19:17 UTC 2025
Previous versions: https://patchwork.freedesktop.org/series/139121/
For perf/core: first patch adds a new macro in include/linux/perf_event.h.
If it's ok, I'd like to merge it through the drm branch so we can add the
pmu implementation to the xe driver. I'm also Cc'ing linux-perf-users at vger.kernel.org
on the other patches to show its usage.
For "drm/xe/pmu: Enable PMU interface", previously from several authors,
I squashed several changes I suggested in the past to clean it up and
reduce boilerplate code that resulted from copy-paste from i915. More
detailed changes can be found at
https://gitlab.freedesktop.org/demarchi/xe/-/tags/tip-xe-pmu-v13
I tested this on Lunar Lake and ADL with and without workload running
and the gt-c6 residency seems reasonable.
v13: this only has 1 event as Vinay said he will rebase the
frequency event on top.
v14
- simplify the gt-c6 event: no more estimate based on suspend time
since we can't take the spinlock. A simpler version is to get runtime pm
when initializing the event and putting it back when it's done. In
future we can come back with fancier things that don´t block the runtime
pm.
v15:
- clean up no longer needed include files
- drop no longer needed struct members
- drop patch adding PMU_EVENT_ATTR_ID_STRING: this can be done later
on top if desired, converting more drivers. There's no pressure need
to be different than the other drivers. Instead, do the attributes
similarly to drivers/iommu/intel/perfmon.c, but still keep a single
macro to define both event, scale and event group
Lucas De Marchi (4):
drm/xe/pmu: Assert max gt
drm/xe/pmu: Extract xe_pmu_event_update()
drm/xe/pmu: Add attribute skeleton
drm/xe/pmu: Get/put runtime pm on event init
Vinay Belgaumkar (2):
drm/xe/pmu: Enable PMU interface
drm/xe/pmu: Add GT C6 events
drivers/gpu/drm/xe/Makefile | 2 +
drivers/gpu/drm/xe/xe_device.c | 3 +
drivers/gpu/drm/xe/xe_device_types.h | 4 +
drivers/gpu/drm/xe/xe_pmu.c | 361 +++++++++++++++++++++++++++
drivers/gpu/drm/xe/xe_pmu.h | 18 ++
drivers/gpu/drm/xe/xe_pmu_types.h | 39 +++
6 files changed, 427 insertions(+)
create mode 100644 drivers/gpu/drm/xe/xe_pmu.c
create mode 100644 drivers/gpu/drm/xe/xe_pmu.h
create mode 100644 drivers/gpu/drm/xe/xe_pmu_types.h
--
2.48.0
More information about the Intel-xe
mailing list