-
Hindawi Publishing CorporationJournal of Computer Systems,
Networks, and CommunicationsVolume 2008, Article ID 578180, 9
pagesdoi:10.1155/2008/578180
Research ArticleScheduling Algorithm: Tasks Scheduling Algorithm
forMultiple Processors with Dynamic Reassignment
Pradeep Kumar Yadav,1 M. P. Singh,2 and Harendra Kumar2
1 Department of Research Planning and Business Development,
Central Building Research Institute,Roorkee 247667, Uttarakhand,
India
2 Department of Mathematics and Statistics, Gurkula Kangari
University, Hardwar 249404, Uttarakhand, India
Correspondence should be addressed to Harendra Kumar, kumar
[email protected]
Received 5 September 2007; Revised 17 January 2008; Accepted 19
March 2008
Recommended by Y. -M. Huang
Distributed computing systems [DCSs] offer the potential for
improved performance and resource sharing. To make the best useof
the computational power available, it is essential to assign the
tasks dynamically to that processor whose characteristics aremost
appropriate for the execution of the tasks in distributed
processing system. We have developed a mathematical model
forallocating “M” tasks of distributed program to “N” multiple
processors (M > N) that minimizes the total cost of the
program.Relocating the tasks from one processor to another at
certain points during the course of execution of the program that
contributesto the total cost of the running program has been taken
into account. Phasewise execution cost [EC], intertask
communicationcost [ITCT], residence cost [RC] of each task on
different processors, and relocation cost [REC] for each task have
been consideredwhile preparing a dynamic tasks allocation model.
The present model is suitable for arbitrary number of phases and
processorswith random program structure.
Copyright © 2008 Pradeep Kumar Yadav et al. This is an open
access article distributed under the Creative Commons
AttributionLicense, which permits unrestricted use, distribution,
and reproduction in any medium, provided the original work is
properlycited.
1. INTRODUCTION
Over the last several years, distributed computing systemshave
become popular as a very attractive option for fast com-puting and
information processing. Distributed computingsystem is used to
describe a system whenever there are severalcomputers
interconnected in some fashion so that a programor procedure runs
on the system with multiple processors.In a heterogeneous computing
system, the tasks of anapplication program must be assigned to the
heterogeneousprocessors to utilize the computational capabilities
andresources of the system efficiently. However, it is a
difficultproblem to compute an assignment of tasks to processors
forwhich the total cost of running the program is minimized.Static
and dynamic algorithms can be extremely efficient inhomogeneous
systems. If all processors are identical thenthe choice “to which
node should we assign the next task?”falls on the processor with
the fewest outstanding jobs [1].However in heterogeneous
distributed environments, wherenot all nodes have the same
parameters, selecting the optimaltarget processor requires more
elaborate algorithms.
Stone [2] has suggested an efficient optimal algorithmfor the
problem of assigning tasks to two processors bymaking use of the
well-known network flow algorithm inthe related two-terminal
network graphs. If the structureof a distributed program is
constrained in certain ways, itis possible to find the optimal
assignment over a systemmade up of any number of processors in
polynomial time.When the structure is constrained to be a tree, the
shortesttree algorithm developed by Bokhari [3] yields the
optimalassignment. Towsley [4] generalized the results of Bokhari
tothe case of series-parallel structures. A further
generalizedprogram structure is a partial K-tree in which trees
arepartial l-tree and series-parallel structures are partial 2-tree
[5] assuming distributed system as fully interconnected,that is,
there exists a communication link between any twomachines. However,
the general N-processors problem (N >3) in a fully
interconnected system is known to be NP-complete [6, 7]. Lee et al.
[8] and Cho and Park [9] havesuggested an optimal algorithm for the
general structureproblem in a linear array network with any number
ofprocessors.
mailto:[email protected]
-
2 Journal of Computer Systems, Networks, and Communications
All the above assignment models are static because theyassume
that once a task is assigned to a processor, it remainsthere
statically during the execution of a distributed pro-gram. These
models deal with the global information, whichis assumed to be
constant during the program execution, ofprogram’s activity.
However the static model assumes thatthe problem can be partitioned
into several tasks each ofwhich contains a unique computational
characteristic. Ina general case each task may have multiple
computationalcharacteristics due to the dynamic control behavior
ofthetask. Such tightly and medium-coupled portions of code
taskwill be more difficult to break up and assign to
differentprocessors. When the characteristics of the
computationchange, a new assignment must be computed. By
“char-acteristics of the computation” we mean the ratios of
thetimes that the program spends in different parts of theprogram.
In order to make the best use of computationalcharacteristics and
resources in a distributed heterogeneouscomputing system, it is
essential to reassign tasksdynamicallyduring program execution, so
asto take advantage of changesin the local reference patterns of
the program. Dynamicalgorithms are employed more frequently because
they offera better efficiency, having the flexibility of tasks
migration.In addition, usually dynamic algorithms are neither
verycomplicated to construct nor costly to run. Hence
dynamicalgorithms have the potential to outperform static
algo-rithms in general. Clearly, the gains from relocating
tasksmust outweigh the cost of relocation. For this
relocation,detailed information on a program’s activity over its
lifetimecan be collected at each time slot of lifetime. We use
phaseas the unit of the time slot for gathering more
detailedinformation of program activity. Bokhari [10] analyzed
theproblem of dynamic assignment in a two-processor system,which
permits relocation of tasks from one processor tothe other at
certain points during the execution of theprogram. This relocation
incurs a predefined relocation costthat contributes to the total
cost of running the program andcode-conversion overheads. Also it
is shown that an optimaldynamic assignment corresponds to a
“dynamic” partitionimposed by a minimum weight cut in an extended
graph. Inthis paper, we consider the dynamic task assignment
problemfor a general program structure and a heterogeneous
N-processors in DCS.
The rest of the paper is organized as follows. Definitionsand
assumptions are defined first in Section 2. In Section 3,tasks
allocation problem has been discussed. The proposedmethod and
algorithm have been explained in Sections 4 and5 concludes this
paper.
2. DEFINITIONS AND ASSUMPTIONS
2.1. Definitions
(i) Phase: a phase of a distributed program is a con-tiguous
period of time during which only one taskis executed. During this
period, the executing taskmay communicate with any number of the
remainingtask. A task may not be moved from one processor toanother
during a phase; it may be moved only between
them. A task may complete its execution in more thantwo phases;
therefore, the number of phases of theexecuting program is always
more than the number ofthe tasks.
(ii) Execution cost: the execution cost eki j is the amount
ofthe work to be performed by the executing task ti onthe processor
pi during the kth phase.
(iii) Intertask communication cost: the intertask commu-nication
cost cki j is incurred due to the data unitsexchanged between the
executing task ti and residingtask t j if they are on different
processors during theprocess of execution in kth phase.
(iv) Residence cost: residence cost rki j (where 1 ≤ i ≤M&1
≤ j ≤ N) is the amount of time spent bythe residing task (other
than executing task) ti on theprocessor pi in kth phase. These
costs may come fromthe use of storage.
(v) Relocation cost: relocation cost relik is the cost
ofreassigning the ith task from one processor to anotherprocessor
at the end of kth phase.
2.2. Assumptions
(i) The program to be executed is assumed to be collec-tion of
tasks that are free, in general, to reside on eitherof the
processors. A task may be a module of executableprogram.
(ii) The given program runs in various phases with one ofits
task executing on a processor in each phase and eachof the other
tasks residing on any of the processors.
(iii) In each phase, execution cost (EC), residence cost (RC)of
nonexecuting tasks, intertask communication cost(ITCC) of executing
task with nonexecuting tasks, andrelocation cost (REC) for
reassigning each task fromone processor to the others at the end of
phases areknown.
(iv) Some of the tasks have restrictions for being allocatedon
some particular processor because of the nonavail-ability of
desired facilities which may include access toparticular peripheral
device, access to a particular task,and high speed arithmetic
capability of the processor.The execution costs of such tasks are
taken to beinfinite on those processors where these tasks can notbe
executed.
3. PROBLEM STATEMENT
Consider a distributed program consisting of a set T ={t1, t2,
t3, . . . , tM} of M tasks to be allocated to a set P ={p1, p2, p3,
. . . , pN} of N processors divided into K phases.The basis for
dynamic program model is the concept ofthe phases of a task
program.With each phase the followinginformation is associated:
(1) the executing task during this phase and its executioncost
on each processor in a heterogeneous system;
(2) residence costs of the remaining tasks, except for
theexecuting task, on each processor. These costs maycome from the
use of storages;
-
Pradeep Kumar Yadav et al. 3
Step-1: Input: K , M, N , ECM(, ,), RCM(, ,), RECM( , ), ITCCM(,
,)Step-2: Start with phase k = 1.Step-3: Calculate NECM(, ,) by
adding the ECM(, ,) with RCM(, ,) for kth phase.Step-4: Assign the
executing task ts to processor pr for which cost is minimum say
TECkStep-5: Add the effect of communication cost of executing tasks
ts with other residing
tasks by adding kth column of ITCCM(, ,) to all the column of
NECM(, ,)except the rth column at which this task is assigned.
Step-6: Assign the residing tasks tg (g = 1, 2, . . . ,M, g /=
s) to processors ph at which time isminimum say
TRC(g)kCalculate:
TRCk =M∑
i=1i /= s
TRC(i)k
Step-7: Store executing and residing tasks and their position on
processors in a lineararray POSS(, )k.Calculate:
(TCOST)k = TECk + TRCkStep-8: k = k + 1.Step-9: Repeat
step-3.Step-10: Modify the cost of NECM(, ,) by adding the
relocation cost relsk−1 to all eks j ,
j = 1, 2, . . . ,N , j /= r.Step-11: Modify the cost of NECM(,
,) by adding the relocation cost relgk−1 to ekg j ,
j = 1, 2, . . . ,N , j /= h.Step-12: Repeat step-4 to
step-6.Step-13: Store executing and residing tasks and their
position on processors in linear array
POSS(, )k+1.Calculate:
(TCOST)k+1 = TECk+1 + TRCk+1Step-14: If k /= K
thenrepeat step-8 to step-14.
elseStep-15: Calculate:
TCOST =K∑
k=1(TCOST)k
Step-16: End.
Algorithm 1: To assign a distributed program consisting of a set
T = {t1, t2, t3, . . . , tM} of M tasks which is divided into K
phases to a set ofn processors P = {p1, p2, p3, . . . , pN} in
order to minimize the total cost.
(3) intertask communication cost between the executingtask and
all other tasks if they are on differentprocessors;
(4) an amount of relocation cost for reassigning each taskfrom
one processor to the others at the end of thephases.
In general, the objective of task assignment is to minimizethe
completion cost of a distributed program by properlymapping the
tasks to the processors. The cost of anassignment A, TCOST(A), is
the sum of execution, intertaskcommunication, residence, and
relocation costs, that is,
TCOST(A) = EC(A) + RC(A) + ITCC(A). (1)
In order to make the best use of the resources in a DCS, wewould
like to find an assignment having minimum cost.
4. PROPOSED METHOD AND ALGORITHM
The problem for allocating a program dynamically that hasbeen
divided into K number of phases is to determine theoptimal task
allocation strategy by considering the phasewiseEC for executing
task and RC for nonexecuting tasks duringthe phases. The phasewise
processing efficiency of individualprocessor is given in the form
of matrix EMC(, ,) = (eki j) oforder (K ×M × N) and RC of each
residing task is reflectedthrough matrix RCM(, ,) = (rki j) of
order (K × M × N).ITCC between executing task and another tasks is
taken inthe form of matrix ITCCM(, ,) = (cki j) of order (K ×
M).The kth column of this matrix represents the ITCC betweenthe
executing task and all other residing tasks for the kthphase.
Relocation costs for reassigning the tasks from oneprocessor to
another at the end of the phases is shown bymatrix RECM(, ) = relik
of order (M × K) where relik is therelocation cost for reassigning
the ith task from one processor
-
4 Journal of Computer Systems, Networks, and Communications
Table 1: Phasewise ECM(, ,) and RCM(, ,).
Phases TasksExecution cost Residence cost
ECM(, ,) RCM(, ,)
p1 p2 p1 p2
1
t1 2 6 — —
t2 — — 3 2
t3 — — 2 2
t4 — — 4 1
2
t1 — — 2 1
t2 ∞ 4 — —t3 — — 1 3
t4 — — 2 3
3
t1 — — 2 1
t2 — — 1 2
t3 4 6 — —
t4 — — 2 1
4
t1 — — 1 3
t2 — — 3 2
t3 — — 1 2
t4 3 2 — —
5
t1 2 ∞ — —t2 — — 3 1
t3 — — 2 1
t4 — — 1 2
to the another at the end of kth phase. In this paper, we
haveconsidered that the relocation cost relik is a constant whenith
task relocates from one processor to another at the endof the kth
phase. The model starts from the first phase forallocating the
tasks and moves to the next phase. Let ts bethe sth executing task
and tg (s /= g) be the gth residing tasksduring kth phase. The
execution for the executing task ts andresiding task tg to the
processors in the kth phase have beendepicted in Figure 1.
The executing task ts (represented by ∗) must be assignedto
processor pr during kth phase for which sum of itsexecution and
relocation costs is minimum. This minimumcost for the task ts is
represented by TECk . When residingtask tg resides on a processor,
it has three-type costs, thatis. residing, relocation, and
communication cost with theexecuting task ts. Therefore, the
residing task tg must beassigned to that processor ph where it has
minimum costsmentioned above. This minimum cost for the task tg
isrepresented by TRC(g)k. Similarly, all other residing tasks
areassigned to the processors. The total cost TRCk due to
theresiding tasks in the kth phase will be:
TRCk =M∑
i=1i /= s
TRC(i)k. (2)
The total cost (TCOST)k for the kth phase is the sum of TECkand
TRCk, that is,
(TCOST)k = TECk + TRCk. (3)
Table 2: ITCCM(, ,) and RECM( , ).
Phasewise communication Relocation cost of the
cost between executing task tasks at the end of phase
and other residing tasks
ITCCM(, ,) RECM( , )
Phases
1 2 3 4 5 1 2 3 4 5
Tasks
t1 — 6 2 1 — 2 3 3 2 —
t2 2 — 4 2 0 2 3 2 3 —
t3 3 2 — 2 2 1 2 2 4 —
t4 2 4 0 — 3 2 4 2 2
The total optimal cost, TCOST, for the program will be
asfollows:
TCOST =K∑
k=1(TCOST)k. (4)
Using the arrays representation for the execution,
residing,intertask communication, and relocation costs, a
mathemat-ical model has been developed for allocating the
distributedprogram dynamically which has been splitting into
anynumber of tasks partition and completing their execution inany
number of phases. The process of allocating the tasks tothe
processors is given in the form of Algorithm 1.
Implementation of the Model
Example 1. Consider a program made up of four tasks{t1, t2, t3,
t4} to be allocated on two processors {p1, p2} infive phases. Task
t1 completes its execution in two phases (inphase 1 and phase 5).
The various matrices to be taken asinput are described phasewise in
Tables 1 and 2.
On applying the present tasks allocation model, we getthe
following optimal assignment as follows:
POSS( , )1 ={(t1, p1
),(t2, p1
),(t3, p1
),(t4, p2
)},
TCOST1 = TEC1 + TRC1 = 10.POSS( , )3 =
{(t1, p2
),(t2, p1
),(t3, p1
),(t4, p2
)},
TCOST2 = TEC2 + TRC2 = 15.POSS( , )3 =
{(t1, p2
),(t2, p1
),(t3, p1
),(t4, p2
)},
TCOST3 = TEC3 + TRC3 = 12.POSS( , )4 =
{(t1, p2
),(t2, p2
),(t3, p1
),(t4, p2
)},
TCOST4 = TEC4 + TRC4 = 12.POSS( , )5 =
{(t1, p1
),(t2, p2
),(t3, p1
),(t4, p1
)},
TCOST5 = TEC5 + TRC5 = 10.
TCOST =K∑
k=1(TCOST)k = 59.
(5)
-
Pradeep Kumar Yadav et al. 5
Table 3: Phasewise ECM(, ,) and RCM(, ,).
Phases TasksExecution costs Residence costs
ECM(, ,) RCM(, ,)
p1 p2 p3 p1 p2 p3
1
t1 — — — 3 1 2
t2 2 6 4 — — —
t3 — — — 3 4 2
t4 — — — 4 3 2
t5 — — — 4 3 2
t6 — — — 2 1 1
t7 — — — 3 1 2
2
t1 6 4 8 — — —
t2 — — — 2 1 3
t3 — — — 3 2 2
t4 — — — 3 4 2
t5 — — — 3 3 2
t6 — — — 1 4 4
t7 — — — 2 3 2
3
t1 — — — 2 3 1
t2 — — — 2 2 2
t3 — — — 3 4 2
t4 6 3 ∞ — — —t5 — — — 3 2 1
t6 — — — 3 2 2
t7 — — — 3 1 1
4
t1 — — — 2 1 2
t2 — — — 1 1 2
t3 — — — 3 3 1
t4 — — — 1 2 4
t5 — — — 2 2 1
t6 8 6 4 — — —
t7 — — — 1 1 3
5
t1 — — — 2 1 1
t2 — — — 2 1 2
t3 6 6 8 — — —
t4 — — — 2 2 2
t5 — — — 4 3 2
t6 — — — 1 2 3
t7 — — — 2 1 2
6
t1 — — — 3 2 2
t2 — — — 1 4 1
t3 — — — 1 2 1
t4 — — — 2 1 1
t5 5 4 2 — — —
t6 — — — 2 2 1
t7 — — — 1 1 2
7
t1 — — — 1 2 1
t2 ∞ 6 8 — — —t3 — — — 2 3 1
t4 — — — 2 3 1
t5 — — — 1 2 2
t6 — — — 1 3 2
t7 — — — 2 2 1
-
6 Journal of Computer Systems, Networks, and Communications
Table 3: Continued.
Phases TasksExecution costs Residence costs
ECM(, ,) RCM(, ,)
p1 p2 p3 p1 p2 p3
8
t1 — — — 2 1 1
t2 — — — 1 1 2
t3 — — — 2 4 2
t4 — — — 2 3 3
t5 — — — 1 1 4
t6 — — — 3 2 2
t7 4 7 8 — — —
Table 4: ITCCM(, ,) and RECM( , ).
Phasewise communication cost of executing Relocation cost of the
tasks at the end of
task with other residing tasks phases
ITCCM(, ,) RECM( , )
Phases 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
Tasks
t1 2 — 3 2 4 2 4 0 3 3 4 1 3 2 3 —
t2 — 0 2 2 2 0 — 3 2 1 5 3 3 3 4 —
t3 4 3 0 4 — 2 2 2 1 1 3 2 3 4 4 —
t4 2 2 — 2 1 3 2 3 1 4 3 2 4 3 2 —
t5 2 1 0 2 2 — 0 2 2 3 2 2 2 4 2 —
t6 6 2 2 — 2 0 2 2 2 3 4 3 2 4 3 —
t7 2 3 3 4 2 0 3 — 3 4 4 3 3 4 2 —
The result of Example 1 is shown by Figure 2. Here
circleslabeled with tasks number represent tasks (tasks
representedby ∗ are executive task and others are residing tasks).
Costsassociated with tasks are their execution costs (for
tasksrepresented by ∗) or residence costs. The edges connectingthe
executing task with other residing tasks during the samephase
represent the communication and weights of theseedges represent
communication costs between the executingtask and other residing
tasks. The edges connecting thetask of a phase to the task of the
next phase representthe relocation of the tasks and the weights of
these edgesrepresent the costs of relocating the tasks. For
example,the task t2 is relocating from processor p2 to processor
p1between the phase 2 and phase 3. The above result showsthat the
assignments of the tasks are changing phase to phase.Optimal cost
for this task program is 59.
Example 2. Consider a program made up of seven tasks{t1, t2, t3,
t4, t5, t6, t7} to be executed on three processors{p1, p2, p3} in
eight phases. The various matrices to be takenas input are
described phasewise in Tables 3 and 4.
The present tasks allocation model gives the followingoptimal
assignment as follows:
POSS,1= {X},TCOST1 = TEC1 + TRC1 = 21,
POSS,2= {B},TCOST2 = TEC2 + TRC2 = 22,
POSS,3= {C},TCOST3 = TEC3 + TRC3 = 22,
POSS,4= {D},TCOST4 = TEC4 + TRC4 = 31,
POSS,5= {E},TCOST5 = TEC5 + TRC5 = 20,
POSS,6= {F},TCOST6 = TEC6 + TRC6 = 21,
POSS,7= {G},TCOST7 = TEC7 + TRC7 = 24,
POSS,8= {H},TCOST8 = TEC8 + TRC8 = 24,
TCOST =K∑
k=1(TCOST)k = 185,
(6)
-
Pradeep Kumar Yadav et al. 7
p1 p2 ph pj pr pn· · · · · · · · · · · ·
p1 p2 ph pj pr pn· · · · · · · · · · · ·
p1 p2 ph pj pr pn· · · · · · · · · · · ·
(k − 1)th phase
kth phase
(k + 1)th phase
TRCk
TECk
relgk−1 relsk−1
relsk
eksr
cksi
cksgrki2 rkghti tg ts
tg ts
∗
Figure 1: Allocation of the tasks in kth phase.
t1
t1
t1
t2
t2
t2
t2
t3
t3
t3
t3 t4
t4
t4
t4
t∗1
t∗2
t∗4
t∗3∗
t∗1∗ 22
22
2
2
22
222
2
2 2
2
3
3
3
3
1
1
1
1
1
1
11
1
4
4
Phase-1
Phase-2
Phase-3
Phase-4
Phase-5
p1 p2
Figure 2: Optimal assignment graph (TCOST = 59).
where
X = (t1, p2), (t2, p1), (t3, p1), (t4, p3), (t5, p3), (t6, p1),
(t7, p2),B = (t1, p2), (t2, p1), (t3, p2), (t4, p3), (t5, p3), (t6,
p1), (t7, p2),C = (t1, p2), (t2, p2), (t3, p3), (t4, p2), (t5, p3),
(t6, p1), (t7, p2),D = (t1, p2), (t2, p2), (t3, p3), (t4, p2), (t5,
p3), (t6, p1), (t7, p2),E = (t1, p2), (t2, p2), (t3, p2), (t4, p2),
(t5, p3), (t6, p1), (t7, p2),F = (t1, p2), (t2, p1), (t3, p3), (t4,
p2), (t5, p3), (t6, p1), (t7, p2),G = (t1, p2), (t2, p2), (t3, p3),
(t4, p2), (t5, p3), (t6, p1), (t7, p2),H = (t1, p2), (t2, p2), (t3,
p3), (t4, p1), (t5, p1), (t6, p1), (t7, p1).
(7)
The results of Example 2 are shown by Figure 3. Task t2completes
its execution in two phases (in phase 1 and phase7). The execution
cost for the task t2 is 2 in phase 1 and 4in phase 7. The above
result for the executing task t2 shows
that the assignments for both the phases are different, thatis;
it depends on the characteristic of the computation. Theoptimal
cost for tasks program is 185.
5. CONCLUSION
We have presented an efficient solution technique for
tasksexecution dynamically in DCS. Starting with the definitionsof
the phase of a modular program, we have developeda
mathematical-based assignment technique for allocatingthe tasks of
a program, divided into k-phases to N > 2processors. The present
model is compared with Kumar etal. [11] and Bokhari [10]. Kumar et
al. [11] have developed amathematical model for allocating “M”
tasks of a program to“N” processors (M > N), divided into any
number of phases.In this paper, authors have considered only
execution, resi-dence, and intertask communication costs. It is
also observedthat the model [11] does not work for the system
program
-
8 Journal of Computer Systems, Networks, and Communications
t6 t3 t∗2 t1 t7 t4 t5
t2 t6 t∗1 t3 t7 t4 t5
t6 t1 t2 t∗4 t7 t3 t5
t∗6 t1 t2 t4 t7 t3 t5
t6 t1 t2 t∗3 t4 t7 t5
t2 t6 t1 t4 t7 t3 t∗5
t6 t1 t∗2 t4 t7 t3 t5
t4 t5 t6 t∗7 t1 t2 t3
2 3 2
1
2 12
1
2
22
2 1
1
22
42
3
1
2 2
22
2 433
2 3 1 2 1
6 22
1
2
1 2 1
4
1 1
4
2 22
21 2
11
6
2 1
3 3
3
2
1 2 2
1 1 1
2
22 2
1
16
3 2 1 2
22
2 22
2 1 3 41 1 2
Phase-1
Phase-2
Phase-3
Phase-4
Phase-5
Phase-6
Phase-7
Phase-8
p1 p2 p3
Figure 3: Optimal assignment graph (TCOST = 185).
having relocation cost for reassigning each task from
oneprocessor to the others at the end of phases. Bokhari [10]has
developed a graph theoretical approach for finding outthe optimal
dynamic assignment of a modular program forthe two-processor system
considering execution, residence,intertask communication, and
relocation costs. The model[10] can not find out the solution when
the system is NP-hard (N > 2) while the present model is
applicable forthe DCS having any number of phases and processors
withrandom program structure. The study of the time complexityof
the present model has also been made and comparedwith Bokhari [10]
and Cho and Park [9]. For Bokhari[10], the time complexity of the
solution of the dynamictask assignment problem for the
two-processor system isO(M3K3). The time complexity of the present
tasks modelfor any number of processors is O(M2N2K) which is
time-saving as compared to O(M2N2K2log NMK) for the Cho andPark
[9].
REFERENCES
[1] S. H. Bokhari, Assignment Problem in Parallel and
DistributedComputing, Kluwer Academic Publishers, Boston, Mass,
USA,1987.
[2] H. S. Stone, “Multiprocessor scheduling with the aid
ofnetwork flow algorithms,” IEEE Transactions on
SoftwareEngineering, vol. SE-3, no. 1, pp. 85–93, 1977.
[3] S. H. Bokhari, “A shortest tree algorithm for optimal
assign-ments across space and time in a distributed
processorsystem,” IEEE Transactions on Software Engineering, vol.
SE-7,no. 6, pp. 583–589, 1981.
[4] D. F. Towsley, “Allocating programs containing branches
andloops within a multiple processor system,” IEEE Transactionson
Software Engineering, vol. SE-12, no. 10, pp. 1018–1024,1986.
[5] D. Fernandez-Baca, “Allocating modules to processors in a
dis-tributed system,” IEEE Transactions on Software
Engineering,vol. 15, no. 11, pp. 1427–1436, 1989.
[6] A. Ghafoor and J. Yang, “A distributed heterogeneous
super-computing management system,” Computer, vol. 26, no. 6,
pp.78–86, 1993.
[7] M. P. Singh, P. K. Yadav, and H. Kumar, “A tasks
allocationmodel for efficient utilization of processor’s capacity
inheterogeneous distributed systems,” in Proceeding of the
9thConference of International Academy of Physical Sciences,
Agra,India, February 2007.
[8] C.-H. Lee, D. Lee, and M. Kim, “Optimal task assignmentin
linear array networks,” IEEE Transactions on Computers,vol. 41, no.
7, pp. 877–880, 1992.
[9] S.-Y. Cho and K. H. Park, “Dynamic task assignment
inheterogeneous linear array networks for metacomputing,”
inProceeding of the Heterogeneous Computing Workshop, pp. 66–71,
Cancun, Mexico, April 1994.
[10] S. H. Bokhari, “Dual processor scheduling with
dynamicreassignment,” IEEE Transactions on Software
Engineering,vol. SE-5, no. 4, pp. 341–349, 1979.
-
Pradeep Kumar Yadav et al. 9
[11] V. Kumar, M. P. Singh, and P. K. Yadav, “An efficient
algorithmfor multiprocessor scheduling with dynamic
reassignment,”in Proceeding of the 6th National Seminar on
TheoreticalComputer Science, pp. 105–118, Banasthali, Rajasthan,
India,August 1996.
-
International Journal of
AerospaceEngineeringHindawi Publishing
Corporationhttp://www.hindawi.com Volume 2010
RoboticsJournal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Hindawi Publishing Corporation http://www.hindawi.com
Journal ofEngineeringVolume 2014
Submit your manuscripts athttp://www.hindawi.com
VLSI Design
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Shock and Vibration
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
The Scientific World JournalHindawi Publishing Corporation
http://www.hindawi.com Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Modelling & Simulation in EngineeringHindawi Publishing
Corporation http://www.hindawi.com Volume 2014
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume
2014
DistributedSensor Networks
International Journal of