<div class="gmail_quote">On Sat, Nov 19, 2011 at 00:24, Ben Widawsky <span dir="ltr"><<a href="mailto:ben@bwidawsk.net" target="_blank">ben@bwidawsk.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


This code is currently living on my personal git repo:<br>
git://<a href="http://people.freedesktop.org/%7Ebwidawsk/drm-intel" target="_blank">people.freedesktop.org/~bwidawsk/drm-intel</a> forced_throttling<br>
<br>
Since these are RFC, I haven't spent too much time cleaning things up.<br>
Feel free to comment on typos, comments you feel are missing, etc. I<br>
also haven't spent any time running the standard kernel tests, kmemleak<br>
and such - I intend to do so while these are reviewed here.<br>
<br>
There are two main "scheduler" types implemented in this patch. What I<br>
refer to as a fairness scheduler, and a batch scheduler. The fairness<br>
scheduler is currently implemented on batch granularity but that is not<br>
guaranteed going forward. The batch scheduler is a way to set batch<br>
limits per pid. Refer to the relevant patch for more details.<br>
<br>
It is my opinion that the fairness scheduler isn't terribly interesting<br>
except to prevent badly written, or malicious apps. For example, a 3d<br>
app which queues up a ton of work but never calls glxSwapBuffer.<br>
<br>
The batch scheduler is also somewhat uninteresting as the values it uses<br>
require proper tuning and will vary from system to system, and even then<br>
depending on what's currently running. But like the fairness one, this<br>
too has its applications.<br>
<br>
Most comments and feedback are welcome.<br></blockquote><div><br>I am not that expert about how GPU scheduling works, but all the patches make sense to me and I haven't found anything apparently wrong.<br><br>I have one feature request for patch 11, which is to list available schedulers via a debugfs entry. For example:<br>

# cat /sys/kernel/debug/dri/0/i915_available_schedulers<br>none *fair batch<br><br>or list them in the output of i915_scheduler, like:<br># cat /sys/kernel/debug/dri/0/i915_scheduler<br>...<br>Scheduler: batch<br>Available schedulers: none fair batch<br>

<br>To see what schedulers are available for usage.<br><br>But besides this, for the series:<br>
Tested-by: Eugeni Dodonov <<a href="mailto:eugeni.dodonov@intel.com" target="_blank">eugeni.dodonov@intel.com</a>><br>Reviewed-by: Eugeni Dodonov <<a href="mailto:eugeni.dodonov@intel.com" target="_blank">eugeni.dodonov@intel.com</a>><br>

<br>
</div></div>-- <br>Eugeni Dodonov<a href="http://eugeni.dodonov.net/" target="_blank"><br></a><br>