All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andi Shyti <andi@etezian.org>
To: Chris Wilson <chris@chris-wilson.co.uk>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH] drm/i915/gt: Switch to manual evaluation of RPS
Date: Mon, 27 Apr 2020 02:28:57 +0300	[thread overview]
Message-ID: <20200426232857.GC13001@jack.zhora.eu> (raw)
In-Reply-To: <20200425185400.8938-1-chris@chris-wilson.co.uk>

Hi Chris,

On Sat, Apr 25, 2020 at 07:54:00PM +0100, Chris Wilson wrote:
> As with the realisation for soft-rc6, we respond to idling the engines
> within microseconds, far faster than the response times for HW RC6 and
> RPS. Furthermore, our fast parking upon idle, prevents HW RPS from
> running for many desktop workloads, as the RPS evaluation intervals are
> on the order of tens of milliseconds, but the typical workload is just a
> couple of milliseconds, but yet we still need to determine the best
> frequency for user latency versus power.
> 
> Recognising that the HW evaluation intervals are a poor fit, and that
> they were deprecated [in bspec at least] from gen10, start to wean
> ourselves off them and replace the EI with a timer and our accurate
> busy-stats. The principle benefit of manually evaluating RPS intervals
> is that we can be more responsive for better performance and powersaving
> for both spiky workloads and steady-state.

basically, when you unpark, you wait a bit depending on the
workload before actually setting the rps and you do this by
creating a timer.

> +static bool has_busy_stats(struct intel_rps *rps)
> +{
> +	struct intel_engine_cs *engine;
> +	enum intel_engine_id id;
> +
> +	return HAS_EXECLISTS(rps_to_i915(rps)); /* XXX init ordering */
> +
> +	for_each_engine(engine, rps_to_gt(rps), id) {
> +		if (!intel_engine_supports_stats(engine))
> +			return false;
> +	}
> +
> +	return true;
> +}

mh? what's the exit point here?

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

  reply	other threads:[~2020-04-26 23:29 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-25 17:57 [Intel-gfx] [PATCH 1/6] drm/i915/gt: Always enable busy-stats for execlists Chris Wilson
2020-04-25 17:57 ` [Intel-gfx] [PATCH 2/6] drm/i915/gt: Move rps.enabled/active to flags Chris Wilson
2020-04-26 23:15   ` Andi Shyti
2020-04-27  8:22     ` Chris Wilson
2020-04-25 17:57 ` [Intel-gfx] [PATCH 3/6] drm/i915/gt: Track use of RPS interrupts in flags Chris Wilson
2020-04-26 23:16   ` Andi Shyti
2020-04-25 17:57 ` [Intel-gfx] [PATCH 4/6] drm/i915/gt: Switch to manual evaluation of RPS Chris Wilson
2020-04-25 18:51   ` Chris Wilson
2020-04-25 18:54   ` [Intel-gfx] [PATCH] " Chris Wilson
2020-04-26 23:28     ` Andi Shyti [this message]
2020-04-27  8:27       ` Chris Wilson
2020-04-25 17:57 ` [Intel-gfx] [PATCH 5/6] drm/i915/gt: Apply the aggressive downclocking to parking Chris Wilson
2020-04-25 17:57 ` [Intel-gfx] [PATCH 6/6] drm/i915/gt: Restore aggressive post-boost downclocking Chris Wilson
2020-04-25 18:52 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/6] drm/i915/gt: Always enable busy-stats for execlists Patchwork
2020-04-25 18:55 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2020-04-25 19:16 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-04-25 19:21 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/6] drm/i915/gt: Always enable busy-stats for execlists (rev2) Patchwork
2020-04-25 19:24 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2020-04-25 19:45 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-04-25 21:18 ` [Intel-gfx] ✗ Fi.CI.IGT: 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=20200426232857.GC13001@jack.zhora.eu \
    --to=andi@etezian.org \
    --cc=chris@chris-wilson.co.uk \
    --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 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.