[PATCH 17/23] io-controller: anticipatory changes for hierarchical fair queuing
Rik van Riel
riel at redhat.com
Mon Aug 31 10:21:16 PDT 2009
Vivek Goyal wrote:
> This patch changes anticipatory scheduler to use queue scheduling code from
> elevator layer. One can go back to old as by deselecting
> CONFIG_IOSCHED_AS_HIER. Even with CONFIG_IOSCHED_AS_HIER=y, with-out any
> other cgroup created, AS behavior should remain the same as old.
> o AS is a single queue ioschduler, that means there is one AS queue per group.
> o common layer code select the queue to dispatch from based on fairness, and
> then AS code selects the request with-in group.
> o AS runs reads and writes batches with-in group. So common layer runs timed
> group queues and with-in group time, AS runs timed batches of reads and
> o Note: Previously AS write batch length was adjusted synamically whenever
> a W->R batch data direction took place and when first request from the
> read batch completed.
> Now write batch updation takes place when last request from the write
> batch has finished during W->R transition.
> o AS runs its own anticipation logic to anticipate on reads. common layer also
> does the anticipation on the group if think time of the group is with-in
> o Introduced few debugging messages in AS.
> Signed-off-by: Nauman Rafique <nauman at google.com>
> Signed-off-by: Vivek Goyal <vgoyal at redhat.com>
Acked-by: Rik van Riel <riel at redhat.com>
More information about the Containers