Speed Scaling on Parallel Processors with Migration
Résumé
We study the problem of scheduling a set of jobs with release dates, deadlines and processing requirements (or works), on parallel speed-scaled processors so as to minimize the total energy consumption. We consider that both preemption and migration of jobs are allowed. An exact polynomial-time algorithm has been proposed for this problem, which is based on the Ellipsoid algorithm. Here, we formulate the problem as a convex program and we propose a simpler polynomial-time combinatorial algorithm which is based on a reduction to the maximum flow problem. Our algorithm runs in O(nf(n)logP) time, where n is the number of jobs, P is the range of all possible values of processors' speeds divided by the desired accuracy and f(n) is the complexity of computing a maximum flow in a layered graph with O(n) vertices. Independently, Albers et al. \cite{AAG11} proposed an O(n2f(n))-time algorithm exploiting the same relation with the maximum flow problem. We extend our algorithm to the multiprocessor speed scaling problem with migration where the objective is the minimization of the makespan under a budget of energy.