mbox series

[v3,0/7] drm/i915: Vulkan performance query support

Message ID 20190604131140.12647-1-lionel.g.landwerlin@intel.com (mailing list archive)
Headers show
Series drm/i915: Vulkan performance query support | expand

Message

Lionel Landwerlin June 4, 2019, 1:11 p.m. UTC
Hi all,

This is a pretty big update following v2.

The first big change is to drop the HW arbitration usage in favor of a
software mechanism using a special priority in the scheduler.

The second is a rework of the uAPI. Since we have a couple of execbuf
uAPI changes for this series (VK_INTEL_performance_query) & timeline
semaphores, we can come up with a more generic mechanism that could be
extended in the future. Rather than reusing partially deprecated
fields.

Unfortunately (or not!) that requires timeline semaphores to be added
to the series because we need to use cliprects_ptr that is already
used by FENCE_ARRAY.

Cheers,

Lionel Landwerlin (7):
  drm/i915/perf: introduce a versioning of the i915-perf uapi
  drm/i915/perf: allow for CS OA configs to be created lazily
  drm/i915: introduce a mechanism to extend execbuf2
  drm/i915: add syncobj timeline support
  drm/i915: add a new perf configuration execbuf parameter
  drm/i915/perf: allow holding preemption on filtered ctx
  drm/i915: add support for perf configuration queries

 .../gpu/drm/i915/gem/i915_gem_execbuffer.c    | 437 +++++++++++++++---
 drivers/gpu/drm/i915/gt/intel_engine_types.h  |   7 +
 drivers/gpu/drm/i915/gt/intel_gpu_commands.h  |   1 +
 drivers/gpu/drm/i915/gt/intel_lrc.c           |   7 +
 drivers/gpu/drm/i915/gt/intel_ringbuffer.c    |   4 +-
 drivers/gpu/drm/i915/i915_drv.c               |  11 +-
 drivers/gpu/drm/i915/i915_drv.h               |  37 +-
 drivers/gpu/drm/i915/i915_perf.c              | 197 ++++++--
 drivers/gpu/drm/i915/i915_priolist_types.h    |   7 +
 drivers/gpu/drm/i915/i915_query.c             | 279 +++++++++++
 drivers/gpu/drm/i915/i915_request.c           |   1 +
 drivers/gpu/drm/i915/i915_request.h           |   1 +
 drivers/gpu/drm/i915/intel_guc_submission.c   |   6 +
 include/uapi/drm/i915_drm.h                   | 211 ++++++++-
 14 files changed, 1109 insertions(+), 97 deletions(-)

--
2.21.0.392.gf8f6787159e