Re: [PATCH 29/33] drm/i915: Implement an "idle" barrier

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

 



Quoting Chris Wilson (2019-01-25 02:30:01)
> We have a number of tasks that we like to run when idle and parking the
> GPU into a powersaving mode. A few of those tasks are using the global
> idle point as a convenient moment when all previous execution has been
> required (and so we know that the GPU is not still touching random
> user memory). However, on a busy system we are unlikely to see global
> idle points, and would prefer a much more incremental system of being
> able to retire after all current execution has completed.
> 
> Enter the idle barrier and idle tasks.
> 
> To determine a point in the future when all current tasks are complete,
> we schedule a new low priority request that will be executed after all
> current work is complete, and by imposing a barrier before all future
> work. We therefore know we retire that barrier, the GPU is no longer
> touching any memory released before the barrier was submitting allowing
> us to run a set of idle tasks clear of any dangling GPU references.

The biggest downside is that this does impose a global barrier onto the
system, a point which PI cannot pass.

After sleeping on it, I think I prefer not to take this approach, as
interesting as it is, just yet (for HW semaphores, we can just keep track
of the read references).
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux