Quoting Chris Wilson (2019-02-05 22:55:36) > Apply backpressure to hogs that emit requests faster than the GPU can > process them by waiting for their ring to be less than half-full before > proceeding with taking the struct_mutex. > > This is a gross hack to apply throttling backpressure, the long term Ok, not so gross in this incarnation since this is the same resource check as we do later with some estimates + backpressure hysteresis. > goal is to remove the struct_mutex contention so that each client > naturally waits, preferably in an asynchronous, nonblocking fashion > (pipelined operations for the win), for their own resources and never > blocks another client within the driver at least. (Realtime priority > goals would extend to ensuring that resource contention favours high > priority clients as well.) > > This patch only limits excessive request production and does not attempt > to throttle clients that block waiting for eviction (either global GTT or > system memory) or any other global resources, see above for the long term > goal. The really obnoxious thing with this patch is that it means that someone has to write test cases for the other priority inversions (and we can't use pi-ringful-* as the flashing red alert anymore, people might actually think the driver works if we stop pointing out how broken it is). -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx