public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Tvrtko Ursulin <tursulin@ursulin.net>
To: Intel-gfx@lists.freedesktop.org
Subject: [RFC 0/8] Tracepoints cleanup and improvements for requests
Date: Fri, 27 Jan 2017 12:01:19 +0000	[thread overview]
Message-ID: <1485518487-4464-1-git-send-email-tvrtko.ursulin@linux.intel.com> (raw)

From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

During some performance analysis I have noticed that currently our trace points
are in a bit of a mess, especially the ones relating to requests.

This series attempts to tidy some of that and also adds some new trace points.

These new trace points are usable to analyze the engine utilization and also
look at how the scheduler resolves dependencies and fences, how much time
requests spend being blocked, and so on.

With some post-processing the new trace points can be used to generate request
and engine timeline graphs like for example the on on this URL:

https://people.freedesktop.org/~tursulin/trace-demo.html

If people find this interesting we could also merge the post-processing tool
to IGT. Although ideally, someone more versed in GUI development could pick up
on the general idea an implement something better than the not very scalable
or precise JS library I have used to prototype this.

Current way of getting to the graphs is essentially:

perf record -e <list-of-events> -a -c 1 binary-to-be-traced
perf script | trace.pl >output.html

Tvrtko

Tvrtko Ursulin (8):
  drm/i915/tracepoints: Tidy request event class
  drm/i915/tracepoints: Adjust i915_gem_ring_dispatch
  drm/i915/tracepoints: Tidy i915_gem_request_wait_begin
  drm/i915/tracepoints: Remove unused i915_gem_request_complete
  drm/i915/tracepoints: Add request submit and execute tracepoints
  drm/i915/tracepoints: Rename i915_gem_request_notify
  drm/i915/tracepoints: Add backend level request in and out tracepoints
  drm/i915/tracepoints: Add hw_id to context tracepoints

 drivers/gpu/drm/i915/Kconfig.debug         |  11 +++
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |   4 +-
 drivers/gpu/drm/i915/i915_gem_request.c    |   2 +
 drivers/gpu/drm/i915/i915_guc_submission.c |   2 +
 drivers/gpu/drm/i915/i915_irq.c            |   2 +-
 drivers/gpu/drm/i915/i915_trace.h          | 122 ++++++++++++++++++++++++-----
 drivers/gpu/drm/i915/intel_lrc.c           |   4 +
 7 files changed, 124 insertions(+), 23 deletions(-)

-- 
2.7.4

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

             reply	other threads:[~2017-01-27 12:01 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-27 12:01 Tvrtko Ursulin [this message]
2017-01-27 12:01 ` [RFC 1/8] drm/i915/tracepoints: Tidy request event class Tvrtko Ursulin
2017-01-27 12:01 ` [RFC 2/8] drm/i915/tracepoints: Adjust i915_gem_ring_dispatch Tvrtko Ursulin
2017-01-27 12:37   ` Chris Wilson
2017-01-30 18:05     ` [PATCH v2 " Tvrtko Ursulin
2017-01-27 12:01 ` [RFC 3/8] drm/i915/tracepoints: Tidy i915_gem_request_wait_begin Tvrtko Ursulin
2017-01-27 12:14   ` Chris Wilson
2017-01-30 18:06     ` [PATCH v2 " Tvrtko Ursulin
2017-01-27 12:01 ` [RFC 4/8] drm/i915/tracepoints: Remove unused i915_gem_request_complete Tvrtko Ursulin
2017-01-27 12:46   ` Chris Wilson
2017-01-27 12:01 ` [RFC 5/8] drm/i915/tracepoints: Add request submit and execute tracepoints Tvrtko Ursulin
2017-01-27 12:01 ` [RFC 6/8] drm/i915/tracepoints: Rename i915_gem_request_notify Tvrtko Ursulin
2017-01-27 12:20   ` Chris Wilson
2017-01-27 13:56     ` Tvrtko Ursulin
2017-01-30 18:07     ` [PATCH v2 " Tvrtko Ursulin
2017-01-30 19:44       ` Chris Wilson
2017-02-20 15:58         ` Tvrtko Ursulin
2017-02-20 16:07           ` Chris Wilson
2017-02-20 17:13             ` Tvrtko Ursulin
2017-01-27 12:01 ` [RFC 7/8] drm/i915/tracepoints: Add backend level request in and out tracepoints Tvrtko Ursulin
2017-01-27 12:27   ` Chris Wilson
2017-01-27 13:59     ` Tvrtko Ursulin
2017-01-27 14:07       ` Chris Wilson
2017-01-27 14:18         ` Tvrtko Ursulin
2017-01-27 14:29           ` Chris Wilson
2017-01-30 18:08             ` [PATCH v2 " Tvrtko Ursulin
2017-01-27 12:01 ` [RFC 8/8] drm/i915/tracepoints: Add hw_id to context tracepoints Tvrtko Ursulin
2017-01-27 13:32 ` ✗ Fi.CI.BAT: failure for Tracepoints cleanup and improvements for requests Patchwork
2017-01-30 23:24 ` ✓ Fi.CI.BAT: success for Tracepoints cleanup and improvements for requests (rev5) 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=1485518487-4464-1-git-send-email-tvrtko.ursulin@linux.intel.com \
    --to=tursulin@ursulin.net \
    --cc=Intel-gfx@lists.freedesktop.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox