Re: [PATCH v4 00/38] GPU scheduler for i915 driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/01/2016 04:37, Tian, Kevin wrote:
From: John.C.Harrison@xxxxxxxxx
Sent: Tuesday, January 12, 2016 2:42 AM

From: John Harrison <John.C.Harrison@xxxxxxxxx>

Implemented a batch buffer submission scheduler for the i915 DRM driver.

The general theory of operation is that when batch buffers are
submitted to the driver, the execbuffer() code assigns a unique seqno
value and then packages up all the information required to execute the
batch buffer at a later time. This package is given over to the
scheduler which adds it to an internal node list. The scheduler also
scans the list of objects associated with the batch buffer and
compares them against the objects already in use by other buffers in
the node list. If matches are found then the new batch buffer node is
marked as being dependent upon the matching node. The same is done for
the context object. The scheduler also bumps up the priority of such
matching nodes on the grounds that the more dependencies a given batch
buffer has the more important it is likely to be.

A curious question. Is this new GPU scheduler still useful when GuC
is enabled? Sorry if this Q. has been answered before.
Yes. The scheduler works with any back end submission mechanism - legacy ring buffer, execlist or Guc. Indeed, the pre-emption support (next patch series in the set) currently requires the GuC. Execlist support is possible but just not currently planned due to time constraints. Legacy ring buffer pre-emption is very different and a lot more work for very little benefit - pre-execlist hardware does not support very much in the way of pre-emption facilities.

The GuC itself does not really do much in the way of scheduling. It does know about the dependencies between batch buffers, for example, so cannot re-order work according to priority. Adding such support without still having large chunks of kernel driver support is a currently unscoped and unplanning task.



Thanks
Kevin

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




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux