Minimizing total busy time in parallel scheduling with application to optical networks

Michele Flammini, Gianpiero Monaco, Luca Moscardelli, Hadas Shachnai, Mordechai Shalom, Tami Tamir, Shmuel Zaks
2009 2009 IEEE International Symposium on Parallel & Distributed Processing  
We consider a scheduling problem in which a bounded number of jobs can be processed simultaneously by a single machine. The input is a set of n jobs J = {J 1 , . . . , J n }. Each job, J j , is associated with an interval [s j , c j ] along which it should be processed. Also given is the parallelism parameter g ≥ 1, which is the maximal number of jobs that can be processed simultaneously by a single machine. Each machine operates along a contiguous time interval, called its busy interval, which
more » ... usy interval, which contains all the intervals corresponding to the jobs it processes. The goal is to assign the jobs to machines such that the total busy time of the machines is minimized. The problem is known to be NP-hard already for g = 2. We present a 4-approximation algorithm for general instances, and approximation algorithms with Research supported in part by the Frucht fund for electrooptics research at the Technion and by the EU COST 293 (GRAAL) research fund improved ratios for instances with bounded lengths, for instances where any two intervals intersect, and for instances where no interval is properly contained in another. Our study has important application in optimizing the switching costs of optical networks. Keywords: parallel job scheduling, busy time, interval graphs, optical networks. the g threads of execution of machine M i , and by scheduling the jobs of J to these threads. Now, let us consider a job J ∈ J i,l for some 1 ≤ l ≤ g (see Figure 3 ). By the construction, J ∩ T = ∅, therefore t −1 (J ) = ∅. Let J (resp. J ) be the smallest (resp. biggest) job in t −1 (J ) with respect to the relation ≺. It is easy to conclude T J i+1 J i Fig. 2. Lemma 2.3 setting T J J J J Machine i + 1 Machine i Fig. 3. Analysis of a job J assigned to machine Mi that span(t −1 (J )) ≤ len(J ) + len(J ) + len(J ). Moreover, len(J ) ≥ max(len(J ), len(J )) because J ∈ s(J ) ∩ s(J ) . Therefore: span(t −1 (J )) ≤ 3len(J ). Now, we use the union bound and sum up the above for all the jobs J ∈ J i,l to get span( J ∈J i,l t −1 (J )) ≤ J ∈J i,l span(t −1 (J )) ≤ 3 J ∈J i,l len(J ) = 3 · len(J i,l ). (1) We note that any set J i,l contains all the points of T . Thus,
doi:10.1109/ipdps.2009.5161017 dblp:conf/ipps/FlamminiMMSSTZ09 fatcat:aslqudr7crcozglkvlcrm5plk4