All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sagar Arun Kamble <sagar.a.kamble@intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: Matthew Auld <matthew.auld@intel.com>
Subject: [PATCH 00/14] i915 perf support for command stream based OA, GPU and workload metrics capture
Date: Mon, 28 Aug 2017 15:22:10 +0530	[thread overview]
Message-ID: <1503913944-3419-1-git-send-email-sagar.a.kamble@intel.com> (raw)

This is follow up series based on reviews for
https://patchwork.freedesktop.org/series/28104/

Major change is assignment of samples at the time of request submission
onto HW instead of assigning at user submission time. Restructured
patches to make some of the earlier code-heavy patches little lighter
by modularizing them. Added base i-g-t testcase dapc for testing exposed
sample fields like PID, Timestamps, CTX ID etc.

Reiterating the intent of this series:
1. Collection of OA reports associated with the render command stream, which
are collected around batchbuffer boundaries.
2. Collect other metadata such as ctx_id, pid, tag etc. with the samples,
and thus we can establish the association of samples collected with the
corresponding process/workload.
3. Collection of GPU performance metrics associated with the command stream of
a particular engine. These metrics include timestamps of work submission and
completion on engines, mmio metrics, etc. These metrics are are collected
around batchbuffer boundaries.

Functionality to be added in future patches:
1. GPU/CPU cross-timestamp sync patches need to be reworked as requested by
   kernel maintainers.
2. Some of the data types being collected through these patches can be done in
   the userspace and that is yet to be finalized. Based on that some of the
   functionality from this series can be pruned.

Cc: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>

Sagar Arun Kamble (2):
  drm/i915: Define CTX_ID property for perf sampling
  drm/i915: Link perf stream structures with Engines

Sourab Gupta (12):
  drm/i915: Add ctx getparam ioctl parameter to retrieve ctx unique id
  drm/i915: Expose OA sample source to userspace
  drm/i915: Framework for capturing command stream based OA reports.
  drm/i915: Flush periodic samples, in case of no pending CS sample
    requests
  drm/i915: Inform userspace about command stream OA buf overflow
  drm/i915: Populate ctx ID for periodic OA reports
  drm/i915: Add support for having pid output with OA report
  drm/i915: Add support for emitting execbuffer tags through OA counter
    reports
  drm/i915: Add support for collecting timestamps on all gpu engines
  drm/i915: Extract raw GPU timestamps from OA reports to forward in
    perf samples
  drm/i915: Async check for streams data availability with hrtimer
    rescheduling
  drm/i915: Support for capturing MMIO register values

 drivers/gpu/drm/i915/i915_drv.h            |  176 ++-
 drivers/gpu/drm/i915/i915_gem.c            |    1 +
 drivers/gpu/drm/i915/i915_gem_context.c    |    3 +
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |   11 +
 drivers/gpu/drm/i915/i915_gem_request.c    |    2 +
 drivers/gpu/drm/i915/i915_gem_request.h    |   10 +
 drivers/gpu/drm/i915/i915_perf.c           | 1904 ++++++++++++++++++++++++----
 drivers/gpu/drm/i915/i915_reg.h            |    6 +
 drivers/gpu/drm/i915/intel_engine_cs.c     |    4 +
 drivers/gpu/drm/i915/intel_ringbuffer.c    |    2 +
 drivers/gpu/drm/i915/intel_ringbuffer.h    |   11 +
 include/uapi/drm/i915_drm.h                |   69 +
 12 files changed, 1935 insertions(+), 264 deletions(-)

-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

             reply	other threads:[~2017-08-28  9:49 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-28  9:52 Sagar Arun Kamble [this message]
2017-08-28  9:52 ` [PATCH 01/14] drm/i915: Add ctx getparam ioctl parameter to retrieve ctx unique id Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 02/14] drm/i915: Expose OA sample source to userspace Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 03/14] drm/i915: Framework for capturing command stream based OA reports Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 04/14] drm/i915: Define CTX_ID property for perf sampling Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 05/14] drm/i915: Flush periodic samples, in case of no pending CS sample requests Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 06/14] drm/i915: Inform userspace about command stream OA buf overflow Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 07/14] drm/i915: Populate ctx ID for periodic OA reports Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 08/14] drm/i915: Add support for having pid output with OA report Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 09/14] drm/i915: Add support for emitting execbuffer tags through OA counter reports Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 10/14] drm/i915: Link perf stream structures with Engines Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 11/14] drm/i915: Add support for collecting timestamps on all gpu engines Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 12/14] drm/i915: Extract raw GPU timestamps from OA reports to forward in perf samples Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 13/14] drm/i915: Async check for streams data availability with hrtimer rescheduling Sagar Arun Kamble
2017-08-28  9:52 ` [PATCH 14/14] drm/i915: Support for capturing MMIO register values Sagar Arun Kamble
2017-08-28 10:13 ` ✓ Fi.CI.BAT: success for i915 perf support for command stream based OA, GPU and workload metrics capture (rev2) Patchwork
2017-08-28 11:05 ` ✗ Fi.CI.IGT: failure " Patchwork
2017-09-07 10:06 [PATCH 00/14] i915 perf support for command stream based OA, GPU and workload metrics capture Sagar Arun Kamble

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=1503913944-3419-1-git-send-email-sagar.a.kamble@intel.com \
    --to=sagar.a.kamble@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=matthew.auld@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.