All of lore.kernel.org
 help / color / mirror / Atom feed
From: Danilo Krummrich <dakr@redhat.com>
To: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Cc: "Tvrtko Ursulin" <tursulin@igalia.com>,
	dri-devel@lists.freedesktop.org, kernel-dev@igalia.com,
	"Christian König" <christian.koenig@amd.com>,
	"Matthew Brost" <matthew.brost@intel.com>,
	"Philipp Stanner" <pstanner@redhat.com>
Subject: Re: [RFC 00/14] Deadline scheduler and other ideas
Date: Wed, 8 Jan 2025 17:57:25 +0100	[thread overview]
Message-ID: <Z36udQs86Mn1-T5p@pollux> (raw)
In-Reply-To: <f7c333dd-6c6e-43ad-8879-8e9ccc374f5c@igalia.com>

On Wed, Jan 08, 2025 at 03:13:39PM +0000, Tvrtko Ursulin wrote:
> 
> On 08/01/2025 08:31, Danilo Krummrich wrote:
> > On Mon, Dec 30, 2024 at 04:52:45PM +0000, Tvrtko Ursulin wrote:
> > > From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
> > 
> > "Deadline scheduler and other ideas"
> > 
> > There's a few patches that could be sent outside the scope of this series, e.g.
> > the first one.
> > 
> > I think it would make sense to do so.
> 
> For now I'll keep them at the head of this RFC and as they get acked or
> r-b-ed I can easily send them standalone or re-ordered. Until then having
> the series separate would make the RFC not standalone.
> 
> > > <tldr>
> > > Replacing FIFO with a flavour of deadline driven scheduling and removing round-
> > > robin. Connecting the scheduler with dma-fence deadlines. First draft and
> > > testing by different drivers and feedback would be nice. I was only able to test
> > > it with amdgpu. Other drivers may not even compile.
> > 
> > What are the results from your tests with amdgpu? Do you have some measurements?
> 
> We already covered this in the thread with Philipp to a degree. Tl;dr; the
> main idea is whether we simplify the code and at least not regress.
> 
> I don't expect improvements on the amdgpu side with the workloads like games
> and benchmarks. I did not measure anything significant apart that priorities
> seem to work with the run queues removed.

I appreaciate the effort, and generally I like the idea, but I also must admit
that this isn't the most convincing motiviation for such an integral change
(especially the "at least not regress" part).

I'd still like to encourage you to send the small cleanups separately, get them
in soon and leave the deadline scheduler as a separate RFC.

Meanwhile, Philipp is working on getting documentation straight and digging into
all the FIXMEs of the scheduler getting to a cleaner baseline. And with your
cleanups you're already helping with that.

For now, I'd prefer to leave the deadline scheduler stuff for when things are a
bit more settled and / or drivers declare the need.

> 
> Where something could show is if someone is aware of a workload where normal
> prio starves low. Since one part of the idea is that with the "deadline"
> scheme those should work a little bit more balanced.
> 
> Also again, feedback (including testing feedback from other drivers) would
> be great, and ideas of which workloads to test.

Unfortunately, there's not much I can tell from the Nouveau side of things,
since we're using the firmware scheduler scheme (one entity per scheduler) and
hence the scheduling strategy isn't that relevant.

> 
> Btw I will send a respin in a day or so which will clean up some things and
> adds some more tiny bits.
> 
> Regards,
> 
> Tvrtko


  reply	other threads:[~2025-01-08 16:57 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-30 16:52 [RFC 00/14] Deadline scheduler and other ideas Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 01/14] drm/sched: Delete unused update_job_credits Tvrtko Ursulin
2025-01-08  8:34   ` Danilo Krummrich
2025-01-08 12:27     ` Boris Brezillon
2025-01-08 14:08       ` Matt Coster
2024-12-30 16:52 ` [RFC 02/14] drm/sched: Remove idle entity from tree Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 03/14] drm/sched: Implement RR via FIFO Tvrtko Ursulin
2025-01-08  9:42   ` Danilo Krummrich
2025-01-08 15:04     ` Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 04/14] drm/sched: Consolidate entity run queue management Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 05/14] drm/sched: Move run queue related code into a separate file Tvrtko Ursulin
2024-12-31  0:35   ` kernel test robot
2024-12-30 16:52 ` [RFC 06/14] drm/sched: Ignore own fence earlier Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 07/14] drm/sched: Resolve same scheduler dependencies earlier Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 08/14] drm/sched: Add deadline policy Tvrtko Ursulin
2025-01-02 13:11   ` Philipp Stanner
2025-01-03 12:40     ` Tvrtko Ursulin
2025-01-03 12:59       ` Philipp Stanner
2025-01-03 15:11         ` Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 09/14] drm/sched: Remove FIFO and RR and simplify to a single run queue Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 10/14] drm/sched: Queue all free credits in one worker invocation Tvrtko Ursulin
2025-01-07 11:08   ` Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 11/14] drm/sched: Connect with dma-fence deadlines Tvrtko Ursulin
2025-01-07 11:10   ` Tvrtko Ursulin
2025-01-09 11:38   ` Michel Dänzer
2025-01-09 13:31     ` Tvrtko Ursulin
2025-01-09 14:44       ` Michel Dänzer
2025-01-09 16:44         ` Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 12/14] drm/sched: Embed run queue singleton into the scheduler Tvrtko Ursulin
2024-12-31  2:39   ` kernel test robot
2024-12-30 16:52 ` [RFC 13/14] dma-fence: Add helper for custom fence context when merging fences Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 14/14] drm/sched: Resolve all job dependencies in one go Tvrtko Ursulin
2024-12-31  6:01   ` kernel test robot
2025-01-02 13:09 ` [RFC 00/14] Deadline scheduler and other ideas Philipp Stanner
2025-01-03 12:02   ` Tvrtko Ursulin
2025-01-03 12:31     ` Christian König
2025-01-03 13:45       ` Philipp Stanner
2025-01-03 15:17       ` Tvrtko Ursulin
2025-01-09 15:08       ` Michel Dänzer
2025-01-09 16:55         ` Tvrtko Ursulin
2025-01-10  9:14           ` Michel Dänzer
2025-01-13 11:40             ` Tvrtko Ursulin
2025-01-13 15:29               ` Michel Dänzer
2025-01-15 13:38                 ` Tvrtko Ursulin
2025-01-15 14:46                   ` Michel Dänzer
2025-01-03 15:16 ` AW: " Koenig, Christian
2025-01-03 15:32   ` Tvrtko Ursulin
2025-01-06 13:47   ` Simona Vetter
2025-01-08  8:07     ` Philipp Stanner
2025-01-08 17:59       ` Simona Vetter
2025-01-08 18:06         ` Tvrtko Ursulin
2025-01-08  8:31 ` Danilo Krummrich
2025-01-08 15:13   ` Tvrtko Ursulin
2025-01-08 16:57     ` Danilo Krummrich [this message]
2025-01-08 18:55       ` Tvrtko Ursulin
2025-01-09 19:59         ` Matthew Brost
2025-01-10  9:16           ` Tvrtko Ursulin
2025-01-10 17:28             ` Matthew Brost
2025-01-13 12:59               ` Tvrtko Ursulin
2025-01-09 19:50       ` Matthew Brost
2025-01-17 12:12 ` Philipp Stanner

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=Z36udQs86Mn1-T5p@pollux \
    --to=dakr@redhat.com \
    --cc=christian.koenig@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=kernel-dev@igalia.com \
    --cc=matthew.brost@intel.com \
    --cc=pstanner@redhat.com \
    --cc=tursulin@igalia.com \
    --cc=tvrtko.ursulin@igalia.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.