intel-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* Trivial scheduler
@ 2016-10-27  0:03 Chris Wilson
  2016-10-27  0:03 ` [PATCH 1/6] drm/i915: Show the execlist queue in debugfs/i915_engine_info Chris Wilson
                   ` (7 more replies)
  0 siblings, 8 replies; 21+ messages in thread
From: Chris Wilson @ 2016-10-27  0:03 UTC (permalink / raw)
  To: intel-gfx

Started out as what intended to be a quick look at how to extend the
fences to support the priority inheritance ended up completing the final
few steps to implement the most trivial priority based scheduler. A lot
of the policy decisions have been left out (such as e.g. only submitting
one request from each context each interrupt) so that it is not very
fine-grained, nor does it implement time-slicing and fair load
balancing, and continues to live in blissful ignorance of the challenge
of preemption. It is also execlists only. It purely serves as fodder to
take the next steps towards a real scheduler, and in the meantime offers
one benefit to current desktops, giving uber priority to the rendering
of the pageflip.

This adds the dependency tracking of the requests required to do
inflight reordering (as distinct from the dependency tracking required
to decide when we can submit the request to hardware) and implements a
priority sorted rbtree of the ready-to-execute requests to be submitted
on the next context-switch.
-Chris

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2016-11-02 13:27 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-10-27  0:03 Trivial scheduler Chris Wilson
2016-10-27  0:03 ` [PATCH 1/6] drm/i915: Show the execlist queue in debugfs/i915_engine_info Chris Wilson
2016-11-02 13:27   ` Joonas Lahtinen
2016-10-27  0:03 ` [PATCH 2/6] drm/i915/scheduler: Signal the arrival of a new request Chris Wilson
2016-10-27  0:03 ` [PATCH 3/6] drm/i915/scheduler: Record all dependencies upon request construction Chris Wilson
2016-10-27  0:03 ` [PATCH 4/6] drm/i915/scheduler: Execute requests in order of priorities Chris Wilson
2016-10-27  7:45   ` Chris Wilson
2016-10-27  0:03 ` [PATCH 5/6] drm/i915/scheduler: Boost priorities for flips Chris Wilson
2016-10-27  0:03 ` [PATCH 6/6] drm/i915/scheduler: Support user-defined priorities Chris Wilson
2016-10-27  0:46 ` ✓ Fi.CI.BAT: success for series starting with [1/6] drm/i915: Show the execlist queue in debugfs/i915_engine_info Patchwork
2016-10-27 14:05 ` [PATCH v2 1/9] " Chris Wilson
2016-10-27 14:05   ` [PATCH v2 2/9] drm/i915: Split request submit/execute phase into two Chris Wilson
2016-10-27 14:05   ` [PATCH v2 3/9] drm/i915: Defer transfer onto execution timeline to actual hw submission Chris Wilson
2016-10-27 14:05   ` [PATCH v2 4/9] drm/i915: Remove engine->execlist_lock Chris Wilson
2016-10-27 14:05   ` [PATCH v2 5/9] drm/i915/scheduler: Signal the arrival of a new request Chris Wilson
2016-10-27 14:05   ` [PATCH v2 6/9] drm/i915/scheduler: Record all dependencies upon request construction Chris Wilson
2016-10-27 14:05   ` [PATCH v2 7/9] drm/i915/scheduler: Execute requests in order of priorities Chris Wilson
2016-10-27 14:05   ` [PATCH v2 8/9] drm/i915/scheduler: Boost priorities for flips Chris Wilson
2016-10-27 14:05   ` [PATCH v2 9/9] drm/i915/scheduler: Support user-defined priorities Chris Wilson
2016-10-27 15:22     ` Chris Wilson
2016-10-28 11:21       ` Chris Wilson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).