We consider the problem of task reweighting in fair-scheduled multiprocessor systems wherein each task's processor share is specified using a weight. The responsiveness of a reweighting scheme can be assessed by comparing its allocations to those of an ideal scheduler that instantly reweights tasks. A reweighting scheme is fine-grained if the per-task "error" (in comparison to an ideal allocation) caused by a reweighting event is constant, and coarse-grained, otherwise. When the number of tasks N is larger than the number of processors M, the worst-case time complexity for fine-grained reweighting, Ω(NlogN), is larger than that of coarse-grained reweighting, Θ(MlogN). In this paper, we construct two new reweighting algorithms that are hybrids of fine- and coarse-grained reweighting that have time complexity less than Θ(NlogN), and produce less error than current coarse-grained techniques. We also present experiments to compare relative advantages of all schemes.
展开▼