Approximation algorithms for general parallel task scheduling

8
Information Processing Letters 81 (2002) 143–150 Approximation algorithms for general parallel task scheduling Oh-Heum Kwon a,, Kyung-Yong Chwa b a Electronics, Computer, and Communication Division, Pukyong National University, Daeyeon-dong 599-1, Nam-gu, Pusan 608-737, South Korea b Department of Computer Science, KAIST, Kusong-dong 373-1, Yusong-gu, Taejon 305-701, South Korea Received 30 October 2000; received in revised form 30 March 2001 Communicated by F.Y.L. Chin Abstract A general parallel task scheduling problem is considered. A task can be processed in parallel on one of several alternative subsets of processors. The processing time of the task depends on the subset of processors assigned to the task. We first show the hardness of approximating the problem for both preemptive and nonpreemptive cases in the general setting. Next we focus on linear array network of m processors. We give an approximation algorithm of ratio O(log m) for nonpreemptive scheduling, and another algorithm of ratio 2 for preemptive scheduling. Finally, we give a nonpreemptive scheduling algorithm of ratio O(log 2 m) for m × m two-dimensional meshes. 2002 Elsevier Science B.V. All rights reserved. Keywords: Algorithms; Parallel task scheduling; Approximation algorithms 1. Introduction A parallel task is one that can be executed by multiple processors. All the processors allotted to a task are required to execute that task in unison and simultaneously. In contrast, a sequential task is one that can be executed by a single processor. A huge amount of work has been devoted to the sequential task scheduling problem. Recently, with the advances in the development of parallel computer systems and parallel algorithms, the parallel tasks are being noticed and studied by several authors [10,13]. In this paper, we consider the general parallel task scheduling problem. There are m processors P ={1, 2,...,m} and n tasks to be scheduled T = * Corresponding author. E-mail address: [email protected] (O.-H. Kwon). {T 1 ,T 2 ,...,T n }. Associated with each task T i is a set of alternative processing modes M i = M j i = (A j i j i ) | j = 1, 2,...,k i , where each A j i , 1 j k i , is a subset of processors on which the execution of task T i is allowed and τ j i is the processing time of the task on that mode. The objective of the scheduling algorithm is to make the length (makespan) of the schedule minimum. We deal two models of scheduling: nonpreemptive and preemptive scheduling. In a nonpreemptive sched- ule, a task in execution will never be suspended until it is finished. In a preemptive schedule, one may sus- pend a task before its completion and resume its exe- cution at a later time, possibly on a different process- ing mode. The strict meaning of the preemptive execution of a task is as follows: if task T i is executed on a processing 0020-0190/02/$ – see front matter 2002 Elsevier Science B.V. All rights reserved. PII:S0020-0190(01)00210-1

Transcript of Approximation algorithms for general parallel task scheduling

Information Processing Letters 81 (2002) 143–150

Approximation algorithms for general parallel task scheduling

Oh-Heum Kwona,∗, Kyung-Yong Chwaba Electronics, Computer, and Communication Division, Pukyong National University,

Daeyeon-dong 599-1, Nam-gu, Pusan 608-737, South Koreab Department of Computer Science, KAIST, Kusong-dong 373-1, Yusong-gu, Taejon 305-701, South Korea

Received 30 October 2000; received in revised form 30 March 2001Communicated by F.Y.L. Chin

Abstract

A general parallel task scheduling problem is considered. A task can be processed in parallel on one of several alternativesubsets of processors. The processing time of the task depends on the subset of processors assigned to the task. We first showthe hardness of approximating the problem for both preemptive and nonpreemptive cases in the general setting. Next we focuson linear array network ofm processors. We give an approximation algorithm of ratio O(logm) for nonpreemptive scheduling,and another algorithm of ratio 2 for preemptive scheduling. Finally, we give a nonpreemptive scheduling algorithm of ratioO(log2m) for m×m two-dimensional meshes. 2002 Elsevier Science B.V. All rights reserved.

Keywords:Algorithms; Parallel task scheduling; Approximation algorithms

1. Introduction

A parallel task is one that can be executed bymultiple processors. All the processors allotted to atask are required to execute that task in unison andsimultaneously. In contrast, asequential taskis onethat can be executed by a single processor. A hugeamount of work has been devoted to the sequentialtask scheduling problem. Recently, with the advancesin the development of parallel computer systems andparallel algorithms, the parallel tasks are being noticedand studied by several authors [10,13].

In this paper, we consider thegeneral paralleltask scheduling problem. There arem processorsP = {1,2, . . . ,m} and n tasks to be scheduledT =

* Corresponding author.E-mail address:[email protected] (O.-H. Kwon).

{T1, T2, . . . , Tn}. Associated with each taskTi is a setof alternativeprocessing modes

Mi ={Mj

i = (Aji , τ ji ) | j = 1,2, . . . , ki},

where eachAji , 1 � j � ki , is a subset of processors

on which the execution of taskTi is allowed andτ jiis the processing time of the task on that mode. Theobjective of the scheduling algorithm is to make thelength (makespan) of the schedule minimum.

We deal two models of scheduling:nonpreemptiveandpreemptivescheduling. In a nonpreemptive sched-ule, a task in execution will never be suspended untilit is finished. In a preemptive schedule, one may sus-pend a task before its completion and resume its exe-cution at a later time, possibly on a different process-ing mode.

The strict meaning of the preemptive execution of atask is as follows: if taskTi is executed on a processing

0020-0190/02/$ – see front matter 2002 Elsevier Science B.V. All rights reserved.PII: S0020-0190(01)00210-1

144 O.-H. Kwon, K.-Y. Chwa / Information Processing Letters 81 (2002) 143–150

modeMji for a total time tji , then it is necessary

that∑

1�j�ki tj

i /τj

i = 1 in order for the task to becompleted. In this paper, the nonpreemptive and thepreemptive scheduling problem will be denoted byPm|set|npr|Cmax andPm|set|pr|Cmax, respectively.

The Pm|set|npr|Cmax problem was considered byseveral authors [3,4]. In [4], they provide a polynomialtime approximation scheme [6] forPm|set|npr|Cmax

problem when the numberm of processors is a fixedconstant.

In fact, this problem is the parallel analog of theun-related machine modelfor the sequential tasks [8,9,12], in which the task execution times are given as amatrix f = (fij ), 1 � i � n, 1 � j � m, wherefijrepresents the execution time of taskTi on processorj .For this problem, a 2-optimal nonpreemptive schedul-ing algorithm [9] and an optimal preemptive schedul-ing algorithm [8] were presented.

Our problem is also a strict generalization of theone called either “dedicated task scheduling” [7] or“scheduling tasks with simultaneous resource require-ments” [5]. In both of those problems, there is a setof resources, e.g., a set of processors, and each taskrequires a fixed subset of the resources simultane-ously, that is, in our terms,|Mi | = 1, for everyi, 1 �i � n. In this paper, this problem will be denoted byPm|fix|(n)pr|Cmax.

In practice, the parallel processors are connectedtogether by a network of a specific topology. Rep-resentative examples are linear arrays, two dimen-sional meshes, trees, and hypercubes. In those sys-tems, tasks require the processors with a specific in-terconnection topology for their execution. For lin-ear arrays, each task will require a set of proces-sors which locate consecutively in the array. For two-dimensional meshes, each task will require proces-sors which form a sub-mesh. In this paper, we con-sider linear arrays and two-dimensional meshes, anddenote those problemsLAm|set/fix|(n)pr|Cmax andMm|set/fix|(n)pr|Cmax, respectively.

We first consider the problem in the general set-ting, and show that it is very unlikely that there ex-ists an efficient polynomial time approximation algo-rithm. We show that, forPm|fix|npr|Cmax problem (forPm|set|pr|Cmax problem, respectively), there exists apositive constantε such that no polynomial time algo-rithm can achieve an approximation factor�(nε) for

some positive constantε unless NP= co-NP(P= NP,respectively).

We next considerLAm|set|npr|Cmax and LAm|set|pr|Cmax problem, and give approximation algorithmsof ratio O(logm) and 2, respectively. Finally, we givean algorithm of ratio O(log2m) for Mm|set|npr|Cmaxproblem.

2. Hardness of approximation

ConsiderPm|fix|npr|Cmax problem. Suppose fur-ther that the execution time of tasks are all equal toone. Scheduling those tasks is closely related to thevertex coloring problem. Let G = (V ,E) be an arbi-trary graph with|V | = n and |E| = m. We interpreteach edge ofG as a processor and each vertex as a taskrequiring the processors corresponding to the edges in-cident to it.

It is obvious that there is a one-to-one correspon-dence between a vertex coloring of graphG and a non-preemptive schedule of the tasks induced fromG, i.e.,the number of colors used to coloring graphG is equalto the length of the schedule. Therefore, the existenceof anyρ-approximation algorithm for this schedulingproblem implies the existence ofρ-approximation al-gorithm for the vertex coloring problem. However, itis revealed that no polynomial time algorithm for ver-tex coloring can achieve an approximation factor of�(n1/10) unless NP= co-NP [2].

At first glance, thePm|fix|pr|Cmax problem seemsto be equivalent to thePm|fix|npr|Cmax problem whenthe execution times of all tasks are equal to one.But they are not equivalent. Consider the followingexample. There are 5 tasks,T1 through T5, and 5processors. The unique processing modeM1

i = (A1i )

for task Ti, i = 1,2, . . . ,5, is defined as follows:A1

1 = {1,2}, A12 = {2,3}, A1

3 = {3,4}, A14 = {4,5},

A15 = {5,1}. As shown in Fig. 1, the length of the

optimal nonpreemptive schedule is 3, while the lengthof the preemptive schedule is 2.5. Therefore, we needanother proof for preemptive scheduling.

For preemptive scheduling, we consider thePm|set|pr|Cmax problem. Suppose further that the task execu-tion time is equal to one for all processing modes. Ourreduction is from the 3-satisfiability problem [6]. In[1,11], from a Boolean 3CNF formulaϕ with m vari-ables, they construct a graphGϕ on n =mO(1) nodes

O.-H. Kwon, K.-Y. Chwa / Information Processing Letters 81 (2002) 143–150 145

Fig. 1. Difference between preemptive and nonpreemptive scheduling.

which are partitioned intor cliquesC1,C2, . . . ,Crwith the following properties on the cardinalityα(Gϕ)of the maximum independent set:(1) If ϕ is satisfiable, thenα(Gϕ)= r, i.e.,Gϕ has an

independent set that contains exactly one vertexfrom each cliqueCi .

(2) If ϕ is not satisfiable, thenα(Gϕ) � r/g wheregis nε for some positive constantε.

Given such a graphGϕ , let vi,1, vi,2, . . . , vi,ci be thevertices of cliqueCi . We then construct a task set

Tϕ = {Ti | 1 � i � r}.

Each taskTi corresponds to cliqueCi , and each nodevij of Ci corresponds to a processing modeMj

i =(Aji ,1) of Ti . Each edge ofGϕ corresponds to a

processor. Processor subsetAj

i consists of processorseach of which corresponds to an edge incident tovij .

Suppose thatϕ is satisfiable. There is an inde-pendent set{v1,s1, v2,s2, . . . , vr,sr }, and, consequently,there exists a schedule with length one by assigningtaskTi, 1 � i � r, onAsii . Suppose thatϕ is not sat-isfiable. Sinceα(Gϕ) � r/g, no more thanr/g taskscan be executed simultaneously at any time instanceon any schedule of the tasks. Therefore, the length ofany schedule will be longer thang.

If we are given a scheduling algorithm with an ap-proximation factor ofρ with ρ < g, we can deter-mine the satisfiability of any Boolean 3BNF formulain polynomial time. Hence, we conclude that thereis no ρ-approximation algorithm withρ < nε unlessP= NP.

3. Nonpreemptive scheduling on a linear array ofprocessors

In this section, we considerLAm|set|npr|Cmax. Thisproblem is NP-hard since the classical multiprocessorsequential task scheduling problem [6] is a specialcase of this problem. We construct arelaxed decisionprocedurefor this problem. Given an integert and thetask set to be scheduled, this procedure would output‘yes’ or ‘no’ with the following properties:(i) if the answer is ‘no’, no schedule with the make-

span less than or equal tot exists;(ii) if the answer is ‘yes’, this procedure produces a

schedule with the makespan at most 2�logm�t .Given such a procedure, we can find the minimum

t for which the procedure gives answer “yes” usingbinary search ont . Let tMIN be the minimum. Sincethe optimal makespan is no less thantMIN , the lengthof the schedule given by the procedure is no more than2�logm� times of the optimal.

To consider the time complexity of binary search,let

τmax= max{τj

i | i = 1,2, . . . , n, j = 1,2, . . . , ki}.

Obviously the optimal schedule length is no longerthan nτmax. Therefore the number of repetition inthe binary search is O(logn + logτmax) which ispolynomial on the size of the input.

The relaxed decision procedure is based on the tech-nique of solving linear relaxation of a particular in-teger programming formulation of the problem androunding the fractional solution into a nearby integersolution. LetLPnpr(t) denote the linear programming

146 O.-H. Kwon, K.-Y. Chwa / Information Processing Letters 81 (2002) 143–150

formulation given below. In this formulation, a vari-able xij is associated with each modeMj

i of eachtaskTi .

j=1,...,ki

xij = 1 for i = 1,2, . . . , n,

i=1,...,n

∀l s.t. j∈Alixil · τ li � t for j = 1,2, . . . ,m,

xij � 0 for i = 1,2, . . . , n and

j = 1,2, . . . , ki,

xij = 0 if τ ji > t.

Imagine the integer programming formulationIPnpr(t) that is different fromLPnpr(t) only by the in-tegrity constraints, i.e.,IPnpr(t) is the one obtained byadding the integrity constraintsxij ∈ {0,1}, 1 � i �n, 1 � j � ki , to LPnpr(t). The first constraint saysthat each task must be assigned to one of its modes.The second implies that, for each processorj , the sumof the execution times of the tasks that are assignedto processorj must be less than or equal tot . Thefourth implies that, ifτ ji > t , there is no schedule withmakespan less than or equal tot with assigningTi intoAji . Indeed this constraint is not needed forIPnpr(t),

but needed for linear relaxation. It is obvious that ifthe optimal makespan is less than or equal tot , thenIPnpr(t) has a feasible solution, and thereby,LPnpr(t)

also has a feasible solution.

Lemma 1. If LPnpr(t) has no feasible solution, thenthere is no schedule with the makespan at mostt .

Suppose thatLPnpr(t) has a feasible solutionx =(xij ), 1� i � n, 1 � j � ki . We propose an algorithmthat converts the feasible solutionx to a schedule withmakespan at most 2�logm�t . To do that, we constructa bipartite graphB(x) = (U,V,E). One side of thebipartite graph consists oftask nodesU = {ui | 1 �i � n}. The other side consists ofprocessor nodesV ={vj | 1 � j �m}. Task nodeui corresponds to taskTi ,and processor nodevj corresponds to processorj .

The edge setE is constructed as follows: For eachvariablexij > 0, find the maximum integerh, 0 � h��logm� − 1, such that there exists an integerc withc · 2h ∈ Aji . Then edge setE contains an edge(ui, vc·2h), and let thelevel of this edge beh. Notice

that c is always an odd number. If not, we canincrement the value ofh by one, while takingc/2rather thanc.

For example, suppose thatxij > 0 and Aji ={10,11,12,13}. It will be that h = 2 and c = 3.Consequently edge(ui, v12) will be added toB.

For an edgee corresponding to variablexij , let

w1(e) = xij andw2(e) = τji . For any graphG, let

ΓG(v) be the set of edges incident tov in graphG. Itis obvious that graphB has the following properties:

Condition 1. For each task nodeui ,∑

e∈ΓB(ui)w1(e)= 1.

Condition 2. For each processor nodevj ,∑

e∈ΓB(vj )w1(e) ·w2(e)� t .

The following Lemma 2 is due to the constructionof Shmoys and Tardos [12].

Lemma 2. For any bipartite graphB satisfying Con-ditions1 and2, there is a spanning subgraphB ′ of Bwith the properties that(1) the degree of each task node inB ′ is exactly one;(2) for any processor nodevj ,

e′∈ΓB′(vj )

w2(e′)� t +

e∈ΓB(vj )w1(e) ·w2(e)� 2t .

In graphB ′, each task node is incident to exactlyone edge, and the edge represents an execution modeof the task.

Let B ′h = (U ′

h,V′h,E

′h) be the subgraph ofB ′

induced by the edges of levelh, 0 � h� �logm� − 1.Note that the setsU ′

h, 0 � h� �logm� − 1, partitionthe task node set.

In Lemma 3, we show that, for eachh, 0 �h � �logm� − 1, the tasks inU ′

h can be scheduledwith length 2t . Therefore, by simply merging�logm�schedules serially, we have a schedule of length2�logm�t .

Lemma 3. For eachh, 0� h� �logm�−1, the tasksin U ′

h can be scheduled with length2t .

O.-H. Kwon, K.-Y. Chwa / Information Processing Letters 81 (2002) 143–150 147

Proof. For any two nodesui and uj in U ′h, let ei

andej be the unique edges incident to each of them,respectively. Letαi and αj be the processor groupscorresponding toei andej , respectively. We will showthat, if ei and ej do not share an end vertex, thenαi ∩ αj = ∅.

Suppose thatei = (ui, vci2h) andej = (uj , vcj2h),and that, without loss of generality,c1 < c2. Remem-ber that c1 and c2 are odd numbers. Suppose forcontradiction thatαi ∩ αj �= ∅. There must be aneven numberc, c1 < c < c2, such thatc · 2h ∈ αi orc · 2h ∈ αj , which means that(c/2) · 2h+1 ∈ αi or(c/2) · 2h+1 ∈ αj . Consequently, the level ofei or ejmust beh+ 1, which is a contradiction.

Sinceαi ∩ αj is empty for any pair of edgesei andej which do not share an end vertex, we actually donot need to concern about the ordering of the tasksin the schedule. Any ordering of the tasks will givea length equal to the maximum over all processors ofthe sum of the execution time of the tasks assigned tothe processor, which is less than or equal to 2t . ✷Lemma 4. If LPnpr(t) has a feasible solution, thenthere exists a schedule with makespan at most2�logm�t .Theorem 1. For LAm|set|npr|Cmax problem, there isa polynomial time scheduling algorithm of approxima-tion ratio O(logm).

Assuming that we take the approach of solving thelinear relaxation and rounding the fractional solution,we can not do much better than the presented one.

Lemma 5. There is an instance of problem such thatLPnpr(t) has a feasible solution, but no schedule withmakespan less than�((logm/ log logm)t) exists.

Proof. Consider the following example. Suppose thatm = kk for an integerk. There are(kk − 1)/(k− 1)tasks{Tij | 0 � i � k − 1, 0 � j � ki−1 − 1}. Thedegree of parallelism of taskTij is kk−i−1. Associatedwith each taskTij arek execution modes

Mij = {Mhij = (Ahij ,1) | 0 � h� k − 1

},

where

Ahij = {(jk + h)kk−i−1 + 1, (jk + h)kk−i−1 + 2, . . . ,

(jk + h)kk−i−1 + kk−i−1}.

For example, letk = 3. There are 13 tasksT0,0, T1,0,

T1,1, T1,2, T2,0, T2,1, . . . , T2,8. The processing modesof the tasks are as follows:

A00,0 = {1,2, . . . ,9}, A1

0,0 = {10,11, . . . ,18},A2

0,0 = {19,20, . . . ,27},A0

1,0 = {1,2,3}, A11,0 = {4,5,6},

A21,0 = {7,8,9},A0

1,1 = {10,11,12}, A11,1 = {13,14,15},

A21,1 = {16,17,18},A0

1,2 = {19,20,21}, A11,2 = {22,23,24},

A21,2 = {25,26,27},A0

2,0 = {1}, A12,0 = {2}, A2

2,0 = {3},A0

2,1 = {4}, A12,1 = {5}, A2

2,1 = {6},...

A02,8 = {25}, A1

2,8 = {26}, A22,8 = {27}.

In the optimal fractional schedule, each task willbe equally divided intok parts, and each of themwill be assigned one of itsk processing modes.The total length of the fractional schedule will beone. Fig. 2 shows a fractional solution whenk = 3.However, in any real schedule, there is at least oneprocessor on whichk different tasks are executed.Therefore, the optimal makespan is at leastk, wherek =�(logm/ log logm). ✷

The algorithm given in this section can be easilymodified to handle the cases where, for any givenα � m, each task requires less thanα processors forits execution so that the approximation factor becomesO(logα). Moreover, when all tasks require the samenumber of processors, we proved that a slightly differ-ent approach yields an algorithm with an approxima-tion factor of 4, and also proved that, there is no poly-nomial time algorithm with an approximation factor ofρ < 2 unless P= NP.

4. Preemptive scheduling on linear array ofprocessors

In this section, we consider theLAm|set|pr|Cmaxproblem. It is clear that this problem is NP-hard since

148 O.-H. Kwon, K.-Y. Chwa / Information Processing Letters 81 (2002) 143–150

Fig. 2. Optimal fractional schedule.

it embeds in itself thesubset sumproblem [6]. Con-sider the following linear programming formulationLPpr(t), and lettOPT be the minimumt for which afeasible solutionx exists.

j=1,...,ki

xij = 1 for i = 1,2, . . . , n,

i=1,...,n

∀l s.t. j∈Alixil · τ li � t for j = 1,2, . . . ,m,

j=1,...,ki

xij · τ ji � t for i = 1,2, . . . , n,

xij � 0 for i = 1,2, . . . , n and

j = 1,2, . . . ,m.

The solutionx of LPpr(t) give us a dedicated taskset in which each taskTi partitioned into subtasksetsTij , 1 � j � ki , xij > 0. SubtaskTij requires

the processors inAji for xij · τ ji units of time. Notwo subtasksTij1 andTij2 are allowed to be executedsimultaneously.

We schedule the subtasks using the followinggreedyalgorithm.

Algorithm

Step 1. Let tcur = 0 and letY be the set of all subtasks;

Step 2. Sort the subtasks inY by the increasing orderof the coordinates of the leftmost processor amongthe processors they require; consider the tasks inY

one after another in this order; for any taskTij being

considered, if all processors inAji are idle at timetcur and, moreover, no subtaskTij ′ is already sched-uled to be executed at timetcur (on other proces-sors), scheduleTij at timetcur on processorsAji andremove it fromY ; otherwise, just ignore the subtaskand consider the next;

Step 3. Let tmin be the minimum execution time of thesubtasks scheduled at Step 2 of this iteration;

Step 4. Suspend each subtask scheduled in Step 2 attime tcur+ tmin. Define the remaining portions of thesuspended subtasks as new subtasks and add themto Y ;

Step 5. Let tcur = tcur + tmin, and go to Step 2 ifY isnot empty.

The schedule produced by this algorithm will con-sists of separate levelsS1, S2, . . . , Sk each of whichis produced by each iteration of the algorithm. Since,for each iteration, at least one original subtask is com-pleted, it is clear thatk �

∑1�i�n ki .

Lemma 6. The length of the schedule produced by ouralgorithm is at most2tOPT.

Proof. Let Tpq be the subtask finished lastly in theschedule. Letspq be the starting time of this subtaskand let fpq be the finishing time of this subtask.Moreover, letr be the leftmost processor among theprocessors inAqp. The proof is immediate from thefact that, for any time instancet < spq , either r isbusy or another subtaskTpq ′ is being executed at someother processors. Since we consider the subtasks inthe increasing order of the coordinate of the leftmostprocessor which they require, ifr is not busy at timet , no processors inAqp is busy. Consequently, subtaskTpq will be scheduled at timet .

Therefore,fpq is less than or equal to the totalexecution time of the subtasks that are executed onprocessorr plus the sum of the execution time of the

O.-H. Kwon, K.-Y. Chwa / Information Processing Letters 81 (2002) 143–150 149

subtasks which belong to the original taskTp , that is,fpq < 2tOPT. ✷Theorem 2. There is a polynomial time algorithmwith an approximation ratio of2 for LAm|set|pr|Cmaxproblem.

5. Scheduling tasks on two-dimensional meshes

Anm×m two-dimensional meshMm hasm2 nodes{(x, y) | x = 1,2, . . . ,m and y = 1,2, . . . ,m} andeach edge connects consecutive nodes in eitherx- ory-direction. Node(1,1) is located at the left-uppercorner of the mesh, while node(m,m) is located atthe right-lower corner of the mesh.

A subset of processorsAji of execution modeMji

of taskTi forms a rectangular submesh. For submeshAj

i , let xl(Aji ) andyu(Aji ) be thex- andy-coordinateof the processor located at the left-upper corner of thesubmesh, and letxr(Aji ) andyb(Aji ) be thex- andy-coordinate of the processor located at the right-bottomcorner of the submesh, respectively.

We use the same linear programming formulationLPnpr(t) as in Section 3, except that the number ofprocessors ism2 instead ofm. Now thatLPnpr(t) has afeasible solutionx, we construct a schedule of length2�logm�2t .

The construction of a bipartite graphB(x)= (U,V,E) is as follows:

U = {ui | i = 1, . . . , n} and

V = {vx,y | 1 � x �m and 1� y �m}.Each edge inE corresponds to a variablexij > 0.For xij > 0, let hx andhy be the minimum integerssuch that there exist two integerscx and cy with

xl(Aj

i ) � cx2hx � xr(Aj

i ) and yb(Aji ) � cy2hy �yu(A

ji ), respectively. We then insert an edgee =

(ui, vcx2hx ,cy2hy ) into E. Moreover, lethx andhy bethex- andy-levelof edgee, respectively. Two weightfunctionsw1(e) andw2(e) are also associated witheach edgee, and Lemma 2 applies to obtainB ′.

In the phase of scheduling tasks according toB ′, thetasks are divided into�logm�2 groups according to thex- andy-level of the unique incident edge surviving inB ′. From the similar argument with Lemma 3, eachgroup of the tasks can be scheduled with length 2t ,

and, consequently, we have a schedule with length atmost 2t�logm�2.

Theorem 3. For theMm|set|npr|Cmax problem, thereis a polynomial time scheduling algorithm of approxi-mation ratioO(log2m).

6. Concluding remarks

In this paper, we consider a general parallel taskscheduling problem in which the execution time of thetasks depends on the processors on which the tasks areto be executed, and presented some negative resultsand some approximation algorithms for linear arrayand two-dimensional mesh networks.

It is an interesting open question whether thereis an approximation algorithm with logarithmic or-der of approximation ratio forPm|fix|pr|Cmax. TheMm|fix|npr|Cmax problem is another interesting openproblem. When the execution times of the tasks areall equal to one, this problem is identical to the vertexcoloring problem for the intersection graphs of the or-thogonal rectangles in the plane. This problem is NP-hard, however, no approximation algorithm has beenreported so far.

References

[1] S. Arora, C. Lund, R. Motwani, M. Sudan, M. Szegedy, Proofverification and intractability of approximation problems, in:Proc. IEEE Symposium on Foundations of Computer Science,Pittsburgh, PA, 1992.

[2] M. Bellare, M. Sudan, Improved non-approximability results,in: Proc. ACM Symposium on Theory of Computing, Mon-treal, Quebec, 1994, pp. 184–193.

[3] J. Chen, C.Y. Lee, General multiprocessor tasks scheduling,Naval Res. Logistics 46 (1999) 57–74.

[4] J. Chen, A. Miranda, A polynomial time approximationscheme for general multiprocessor job scheduling, in: ACMSymposium on Theory of Computing, Atlanta, GA, 1999,pp. 418–427.

[5] G. Dobson, U.S. Karmarkar, Simultaneous resource schedul-ing to minimize weighted flow times, Oper. Res. 37 (1989)592–600.

[6] M.R. Garey, D.S. Johnson, Computers and Intractability,Freeman, San Francisco, CA, 1979.

[7] M.X. Geomans, An approximation algorithm for schedulingon three dedicated machines, Discrete Appl. Math. 61 (1995)49–59.

[8] E.L. Lawler, J. Labetoulle, On preemptive scheduling of un-related parallel processors by linear programming, J. ACM 25(1978) 612–619.

150 O.-H. Kwon, K.-Y. Chwa / Information Processing Letters 81 (2002) 143–150

[9] J.K. Lenstra, D.B. Shmoys, E. Tardos, Approximation algo-rithms for scheduling unrelated parallel machines, Math. Pro-gramm. A 46 (1990) 259–271.

[10] W. Ludwig, P. Tiwari, Scheduling malleable and nonmalleableparallel tasks, in: Proc. ACM/SIAM Symposium on DiscreteAlgorithms, Arlington, VA, 1994, pp. 167–176.

[11] C. Lund, M. Yannakakis, On the hardness of appoximatingminimization problems, in: Proc. Symposium on Theory ofComputing, San Diego, CA, 1993, pp. 286–293.

[12] D.B. Shmoys, E. Tardos, Scheduling unrelated machineswith costs, in: Proc. ACM-SIAM Symposium on DiscreteAlgorithms, Austin, TX, 1993, pp. 448–454.

[13] J. Turek, D. Buell, E. Davis, Approximate algorithms forscheduling parallelizable tasks, in: Proc. ACM Symposium onParallel Algorithms and Architectures, 1992, pp. 323–332.