0% found this document useful (0 votes)
10 views

2005 (058) - Dynamic Task Scheduling Genetic Algorithm

This document describes a genetic algorithm for dynamically scheduling heterogeneous tasks on heterogeneous processors in a distributed system. The genetic algorithm aims to minimize total execution time by adapting to changing system resources and scheduling tasks in batches. The algorithm improves upon previous work by not making assumptions about homogeneous processors, fixed communication costs, or static resource availability. It was tested against six other schedulers and achieved more efficient results across different scenarios.

Uploaded by

fsmondiolatiro
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

2005 (058) - Dynamic Task Scheduling Genetic Algorithm

This document describes a genetic algorithm for dynamically scheduling heterogeneous tasks on heterogeneous processors in a distributed system. The genetic algorithm aims to minimize total execution time by adapting to changing system resources and scheduling tasks in batches. The algorithm improves upon previous work by not making assumptions about homogeneous processors, fixed communication costs, or static resource availability. It was tested against six other schedulers and achieved more efficient results across different scenarios.

Uploaded by

fsmondiolatiro
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Dynamic task scheduling using genetic algorithms for heterogeneous distributed

computing

Andrew J. Page and Thomas J. Naughton


Department of Computer Science,
National University of Ireland, Maynooth,
County Kildare, Ireland.
[email protected], [email protected]

Abstract Many heuristic algorithms exist for specific in-


stances of the task scheduling problem, but are inefficient
An algorithm has been developed to dynamically sched- for a more general case [9]. The use of Holland’s genetic al-
ule heterogeneous tasks on heterogeneous processors in a gorithms [7] (GAs) in scheduling, which apply evolution-
distributed system. The scheduler operates in an environ- ary strategies to allow for the fast exploration of the search
ment with dynamically changing resources and adapts to space of schedules, allows good solutions to be found
variable system resources. It operates in a batch fashion quickly and for the scheduler to be applied to more gen-
and utilises a genetic algorithm to minimise the total exe- eral problems. Many researchers have investigated the use
cution time. We have compared our scheduler to six other of GAs to schedule tasks in homogeneous [8, 19] and het-
schedulers, three batch-mode and three immediate-mode erogeneous [1, 11, 15, 18] multi-processor systems with
schedulers. We have performed simulations with randomly notable success.
generated task sets, using uniform, normal, and Poisson dis- Unfortunately, assumptions are often made which reduce
tributions, whilst varying the communication overheads be- the generality of these solutions, such that scheduling can
tween the clients and scheduler. We have achieved more effi- be calculated off-line in advance and cannot change [1,
cient results than all other schedulers across a range of dif- 8, 15, 18], all communications times are known in ad-
ferent scenarios while scheduling 10,000 tasks on up to 50 vance [1, 8, 15, 18], networks provide instantaneous mes-
heterogeneous processors. sage passing [19], that all processors have equal capabili-
ties and are dedicated to processing tasks from the sched-
uler [1, 8, 9, 14, 15, 17, 18, 19, 20]. These assumptions
limit the generality of these scheduling strategies in real-
1. Introduction world distributed systems. It would be more preferable to
make no assumptions about the homogeneity of the proces-
Distributed computing is a promising approach to meet sors, or about the availability of system resources.
the increasing computational requirements of scientific re-
search. However, a number of issues arise which are not en- In this paper a scheduling strategy is presented which
countered in sequential processing which, if not properly uses a GA to schedule heterogeneous tasks on to heteroge-
handled, can nullify the benefits of parallelization. We be- neous processors to minimise the total execution time. It op-
lieve that task scheduling is the most important of these is- erates dynamically, allowing for tasks to arrive for process-
sues because inappropriate scheduling of tasks can fail to ing continuously, and considers variable system resources,
exploit the true potential of a distributed system and can off- which has not been considered by other dynamic GA sched-
set the gains from parallelization due to excessive commu- ulers. This paper is an updated version of [13] in which
nication overhead or under-utilisation of resources. Thus it we present a revised algorithm, more comprehensive exper-
falls to one’s scheduling strategy to produce schedules that iments, and significant testing and verification.
efficiently utilise the resources of the distributed system and In Sect. 2 we review related work and give an overview
minimise the total execution time. The problem of schedul- of how a GA operates. In Sect. 3 we describe our schedul-
ing heterogeneous tasks onto heterogeneous resources, oth- ing algorithm. In Sect. 4 we present the results of our per-
erwise known as the task allocation problem, is an NP-hard formance experiments. In Sect. 5 we give our conclusions
problem for the general case [5]. and suggest future directions for our work in Sect. 6.

Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)
1530-2075/05 $ 20.00 IEEE
initialise population ulers for real-world distributed systems. Current dynamic
do{ GA schedulers have been shown to produce near optimal
crossover schedules in simulations [19, 20], although assumptions
random mutation that have been made limit their generality. For example, in-
selection stantaneous message passing [19], homogeneous process-
}while(stopping conditions not met) ing resources [19, 20], variable communications costs and
variable processing resources are not considered [19, 20].
return best individual
3. Scheduling Algorithm
Figure 1. Pseudo code for genetic algorithm
The algorithm we have developed is based on the
2. Genetic Algorithms and scheduling state-of-the-art homogeneous GA scheduler developed
by Zomaya et al. [19, 20]. We have created an algo-
There are many examples in the literature of artificial in- rithm which can adapt to varying resource environments
telligence techniques being applied to task scheduling [1, 8, and can produce near-optimal schedules. We wish to sched-
11, 14, 15, 17, 18, 19, 20]. Meta-heuristic search techniques ule an unknown total number of tasks for processing on a
such as GAs [7], tabu [6], and ant colony search [3] are most distributed system with a minimal total execution time, oth-
applicable to the task scheduling problem because we wish erwise known as makespan.
to quickly search for a near optimal schedule out of all pos- The processors of the distributed system are heteroge-
sible schedules. Good results have resulted from the use of neous. The available network resources between processors
GAs in task scheduling algorithms [1, 8, 11, 14, 15, 17, 19, in the distributed system can vary over time. The availabil-
20]. ity of each processor can vary over time (processors are not
A GA is a meta-heuristic search technique which allows dedicated can may have other tasks that partially use their
for large solution spaces to be partially searched in poly- resources). Tasks are indivisible, independent of all other
nomial time, by applying evolutionary techniques from na- tasks, arrive randomly, and can be processed by any proces-
ture [7]. GAs use historical information to exploit the best sor in the distributed system.
solutions from previous searches, known as generations, When tasks arrive they are placed in a queue of unsched-
along with random mutations to explore new regions of uled tasks. Batches of tasks from this queue are scheduled
the solution space. In general a GA repeats three steps (se- on processors during each invocation of the scheduler. Each
lection, crossover, and random mutations) as shown by the idle processor in the system requests a task to process from
pseudo code in Fig. 1. Selection according to fitness (effi- the scheduler, which it processes and returns. The sched-
ciency in our case) is a source of exploitation, and crossover uler contains a queue of future tasks for each processor, and
and random mutations promote exploration. when a request for work is received the task at the head of
A generation of a GA contains a population of individ- the corresponding queue is sent for processing. A proces-
uals, each of which correspond to a possible solution from sor does not contain a queue of tasks; because network re-
the search space. Each individual in the population is eval- sources are limited and processing resources are not ded-
uated with a fitness function to produce a value which in- icated, we wish to avoid repeatedly issuing the same task
dicates the goodness of a solution. Selection takes a certain multiple times, e.g., when a machine is switched off.
number of individuals in the population and brings them Each task has a resource requirement which is measured
forward to the next generation. Crossover takes pairs of in- in millions of floating point operations (MFLOPs). The
dividuals and uses parts of each to produce new individu- available processing resources, or execution rate, of each
als. Random mutations swaps parts of an individual to pre- processor is measured in MFLOPs per second, which we
vent the GA from getting caught in a local minimum. write as Mflop/s to avoid confusion. The execution rate is
Much work has been done on using GAs for static measured using Dongarra’s Linpack benchmark [4]. This is
scheduling [1, 8, 15, 18], where schedules are created be- a recognised standard used to benchmark systems for in-
fore runtime. However, the state of all tasks and system re- clusion in the list of Top 500 Supercomputers [16]. Avail-
sources must be known a priori and cannot change. This able processing and network resources vary over time, so
limits these schedulers to specific problems and systems. a smoothing function is used to minimise localised fluctua-
Dynamic GA schedulers [11, 19, 20] create schedules at tions, thus allowing for a more realistic processing environ-
runtime, with knowledge about the properties of the system ment. A single processor is dedicated to scheduling.
and tasks possibly not known in advance, allowing for vari- The queue of unscheduled tasks could contain a large
able system and task properties to be considered. Dynamic number of tasks and if all where to be scheduled at once, the
GA schedulers are thus more practical than static sched- scheduler could take a long time to find an efficient sched-

Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)
1530-2075/05 $ 20.00 IEEE
3.3. Selection, Crossover and Mutation

We choose to use the standard weighted roulette wheel


method of selection which is widely used by previous re-
searchers who have applied GAs to task scheduling [8, 14,
Figure 2. Encoding of a schedule
19]. Each individual iin the population is assigned a slot be-
 −1

ρ
tween 0 and 1. The size of slot i is ςi = Fi × Fj ,
ule. To speedup the scheduler, and reduce the chance of pro- j=1
cessors becoming idle, we only consider a subset of the un- 
ρ
scheduled tasks, which we call a batch. A larger batch will where ςi = 1 and p is the number of individuals in the
i=1
usually result in a more efficient schedule [19]. We must population. After the selection process is complete we use
thus trade the batch size with running time. To do this we the cycle crossover method [12] to promote exploration as
dynamically set the batch size according to the estimated used in [19]. We have chosen to use two types of mutation
amount of time until the first processor becomes idle. to promote exploration of the search space. First we ran-
domly swap elements of a randomly chosen individual in
the population. Then we use a re-balancing heuristic to mu-
3.1. Encoding tate and improve the population. The initial population is
generated using a list scheduling heuristic. A percentage of
Each individual in the population represents a possible tasks are randomly assigned to processors with the remain-
schedule. Fig. 2 shows the encoding used. Each character ing tasks being assigned to the processors that will finish
is a mapping between a task and processor. Each character processing them the earliest. This leads to a well balanced
contains the unique identification number of a task, with −1 randomised initial population.
being used to delimit different processor queues, where Pi
is processor i. Thus the number of characters is H + M − 1,
3.4. Stopping Conditions
where H is the number of tasks in the batch, and M is the
number of processors. The GA will evolve the population until one or more
stopping conditions are met. The individual with the lowest
3.2. Fitness Function makespan is selected after each generation and if it is less
than a specified minimum, the GA stops evolving. The max-
imum number of generations is set at 1000 because the qual-
A fitness function attaches a value to each individual in
ity of the schedules returned with more than that number
the population, which indicates the goodness of the sched-
does not justify the increased computation cost (as in [19]
ule. We use relative error to generate the fitness values. We
and demonstrated in Fig. 3). The GA will also stop evolv-
wish to calculate the fitness of each individual in the popu-
ing if one of the processors becomes idle, in which case it
lation. Previously assigned, but unprocessed, load for each
will return the best schedule found so far.
processor is considered by calculating the finishing time of
a processor j. δj,i = (Lj /Pj ), where Lj denotes the pre-
viously assigned load, measured in MFLOPs, and Pj is the 3.5. Rebalancing heuristic
current processing power in Mflop/s of processor j.
We have introduced a re-balancing heuristic to improve
The theoretical optimal processing time can now be the quality of results returned. For each individual in the
found as,  population, in each generation, we select the most heavily

N 
M 
M
loaded processor. A task is then selected at random from an-
ψ = ti / Pj + δj , where ti is the process-
i=1 j=1 j=1 other processor and if it is smaller than a task in the most
ing requirement of task i in the batch (in MFLOPs) and N heavily loaded processor, a swap is performed. We only al-
is the total number of tasks in the batch. low a maximum of 5 random searches for a smaller task. If
The relative
 error of individual i is given as the resulting schedule is fitter, it is kept.
   2 Fig. 3 shows the average percentage decrease in
 M  N 
  c 
Ei = ψ − Lj,i + ((ty /Pj ) + Γ(y,j) )  makespan after each generation of the GA, with points
j=1  y=1  taken after every generation. Each point on the graph is
where Γc(y,j) is the communication cost of schedul- an average of 50 runs of the scheduler. The largest re-
ing task y on processor j. The fitness value of individual ductions in makespan occur in the first 100 generations.
i is Fi = 1/Ei , andFi = [0, 1]. A larger value indi- After that the reductions begin to level out, requir-
cates a better or fitter schedule. ing larger numbers of generations, with little improvement.

Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)
1530-2075/05 $ 20.00 IEEE
3.6. Smoothing Function
1

0.9 A smoothing function is defined that finds a single rep-


0.8
resentative value for a sequence of values. As each new
0.7
value is added to the sequence, this representative value
% reduction in makespan

0.6
is updated. For the first i values of a sequence of values
a1 , a2 , . . ., this representative value would be denoted Γai ,
and defined recursively as Γai = Γai−1 + ν(ai − Γai−1 ),
0.5

0.4
where the smoothness of the sequence of representative val-
0.3
ues is controlled by ν ∈ [0, 1], and where we let Γa0 = a1 .
0.2
The function allows one to vary the influence of more re-
Pure GA
0.1 1 rebalance cent sequence values on the representative value, from no
50 rebalances
0
0 100 200 300 400 500 600 700 800 900 1000
influence (ν = 0) to complete dominance (ν = 1). The
No. of generations
smoothing function is employed in several instances in our
scheduler. In this paper, we describe the application of the
Figure 3. Average reduction in makespan af- smoothing function to the first i values of an arbitrary se-
ter each generation of the GA quence x1 , x2 , . . . with the notation Γxi .

3.7. Dynamic Batch Size

We wish to define batch sizes that are large enough so


250
that the processor hosting the scheduler is utilized fully
(and to achieve low makespans), but not too large that any
200 processors become idle before the schedule has been fully
computed. The GA takes Θ(H 2 ) time to create a schedule,
150 where H is the number of tasks in a batch (batch size). After
the pth batch has been scheduled, the first processor will be-
Time (s)

100
come idle after sp = minM j=1 (δj /Pj ), where δj is the total
processing time in MFLOPs of the tasks waiting to be pro-
cessed by processor j, and M is the number of processors.
50
1/2
We choose Hp+1 = Γsp + 1 as a simple approxima-
0
tion of the optimal size for batch p + 1. Once a schedule has
0 2 4 6 8 10 12 14 16 18 20
No. of rebalances been assigned the batch size is recalculated.

Figure 4. Time taken to schedule 10,000 tasks 4. Experiments


with varying numbers of re-balances in every
generation of the GA The scheduling algorithm described in Sect. 3 has been
implemented and and applied to simulated data. A num-
ber of different experiments have been performed to
demonstrate the effectiveness of the scheduling algo-
The re-balancing heuristic minimises the makespan fur- rithm with varying communicating costs. We compare
ther than a pure GA, with 50 re-balances per individual in our scheduler to six other schedulers, and evaluate the re-
the population per generation, resulting in the makespan be- sults using two different but related metrics, makespan and
ing reduced to only 65% of its original value after 1000 efficiency. Makespan is the total execution time of a sched-
generations (from Fig. 3). A single rebalance reduces ule. Efficiency is the percentage of the time that proces-
the makespan to approximatly 70%, whilst no rebalanc- sors actually spend processing rather than communicating
ing (pure GA) reduces to 75%. or idling.
These re-balances do have an associated additional cost A representative set of heterogeneous computing task
in terms of time. Fig. 4 shows the time taken to run a GA benchmarks does not exist as yet, as noted by Theys et
for 1000 generations with varying numbers of re-balances. al. [15]. Our task sizes are randomly generated using, uni-
It increases the time taken linearly. We have decided to only form, normal, and Poisson distributions. By using different
perform a single re-balancing at each generation to enable random distributions, we can demonstrate the flexibility of
the algorithm to run quickly. our scheduling algorithm. This is often overlooked in the

Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)
1530-2075/05 $ 20.00 IEEE
literature [1, 8, 9, 11, 14, 15, 17, 19, 20]. For these exper-
iments we will vary the communication costs and the task 0.7
PN
sizes. MM
MX
0.6
EF
LL
4.1. Other schedulers 0.5
ZO
RR

We have also compared our scheduling algorithm against 0.4

Efficiency
a number of well known batch and immediate mode heuris-
tic schedulers. An immediate mode scheduler only consid- 0.3

ers a single task for scheduling on a FCFS (first come,


first served) basis while a batch mode scheduler consid- 0.2

ers a number of tasks at once for scheduling. We will com-


pare our algorithm to three immediate mode and three batch 0.1

mode schedulers [11, 15].


0
The earliest first (EF) algorithm is an immediate mode 0 0.01 0.02 0.03 0.04 0.05 0.06
1/mean communications cost
0.07 0.08 0.09 0.1

scheduler. When a task is presented for processing, the


scheduler considers the existing load on each processor and
allocates the task to the processor which will finish pro- Figure 5. Efficiency of schedulers with a nor-
cessing it the earliest. The EF algorithm uses the available mal distribution of task sizes and varying
information about the task and the processors when mak- communication costs.
ing a scheduling decision. It has a worst case complex-
ity of Θ(M ), where M is the number of processors, when
scheduling a single task.
The lightest loaded (LL) scheduler is an immediate mode We have validated our implementation of this scheduler by
scheduler which allocates tasks to the processor with the reproducing some of the performance results in [19] (not in-
lowest current load, measured in our case as MFLOPs. It cluded here).
does not consider the size of a task when scheduling it. It
has a worst case complexity of Θ(M ).
The round robin (RR) scheduler is the most basic of
the immediate mode schedulers used in these experiments, 4.2. Setup
where tasks are assigned to processors in a round robin fash-
ion. No load or task information is used when making a
We simulated the performance of our scheduler
scheduling decision. It has a worst case complexity of Θ(1).
against the performance of six other schedulers, de-
The max-min (MX) scheduler is a batch mode heuristic scribed in Sect. 4.1, for these experiments. All of the
scheduler. It takes batches of tasks on a FCFS basis. These tasks arrived for scheduling at the beginning of the sim-
tasks are then sorted according to task size in a descend- ulation. Each experiment was repeated 50 times and an
ing order. The largest task is then allocated to the processor average result was calculated for each point on the result-
that will finish processing it first (same as EF). This is re- ing graphs.
peated until the batch is empty, after which another batch
is considered. The main aim of this scheduler is to have the We scheduled up to 10,000 heterogeneous tasks onto 50
largest tasks scheduled as early as possible, with smaller heterogeneous processors. For these experiments each pro-
tasks at the end filling in the gaps. It has a complexity of cessor was assumed to have a fixed execution rate, measured
Θ(max(M, nlogn)), where n is the size of the batch. in Mflop/s. The aim of these experiments is to show that pre-
The min-min (MM) scheduler is similar to the MX dicting the communication costs in advance will improve
scheduler, except tasks are sorted in ascending order accord- the efficiency, compared to heuristics which adapt to com-
ing to size. munication costs after they have been incurred. All sched-
The scheduler proposed by Zomaya et al. (ZO) in [19] ulers were presented with the same set of tasks for schedul-
has been implemented for this paper. It is the current state ing and all schedulers have the same information available
of the art homogeneous GA scheduler and the basis for our to them.
scheduler. The ZO scheduler was easily converted from a We have decided to use a population size of 20, which is
homogeneous scheduler to a heterogeneous scheduler by known as a micro GA [2] and used in [19, 20], which speeds
using the Mflop/s benchmark for task sizes rather than time. up computation time without impacting greatly on the final
It is a batch scheduler which uses GAs to create schedules. result.

Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)
1530-2075/05 $ 20.00 IEEE
10000 0.25
PN
9000
MM
8000 MX
0.2
EF
7000 LL
ZO
6000
0.15 RR

Efficiency
Time

5000

4000
0.1
3000

2000
0.05
1000

0
EF LL RR ZO PN MM MX
0
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
1/mean communication cost

Figure 6. Makespan when task sizes have


a normal distributed with a mean of 1000 Figure 7. Efficiency of schedulers with a uni-
MFLOPs and a variance of 9 × 105 form distribution of task sizes and varying
communication costs.

4.3. Normal distribution


3000
Fig. 5 shows the efficiency of the seven different schedul-
ing algorithms when the task sizes are normally distributed.
2500
We used a batch size of 200 with 1000 tasks to be sched-
uled which were randomly generated at the beginning of 2000
each scheduling simulation with each point on the graph
consisting of an average of 20 complete schedules. Fig. 5
Time

1500

consists of the efficiency of 2000 complete schedules with


varying communications costs, and all other variables kept 1000

fixed. The task sizes were generated with a mean of 1000


MFLOPs and a variance of 9 × 105 . The horizontal axis in 500

Figs. 5 is the mean communication cost for all communica-


0
tion links between all clients and the scheduler. Each com- EF LL RR ZO PN MM MX

munications link has its own randomly generated mean cost,


which is normally distributed. Fig. 5 shows that our sched-
Figure 8. Makespan when task sizes are
uler (PN) gives the best processor efficiency. Fig. 6 is the
uniformly distributed between 10 and 100
makespan for the algorithm, with a varying batch size and
MFLOPs.
shows that PN out performs all the other schedulers in terms
of total execution time.
tio of the smallest to the largest task is only 1:10. As the set
4.4. Uniform distribution of tasks becomes more equal, the efficiency of most of the
schedulers should improve. We see that when the range is
Fig. 7 shows the efficiency of the seven different sched- increased in Fig. 9 (1:1000) the differences between the var-
uler with varying communication costs. The task sizes were ious schedulers become more accentuated.
uniformly distributed between 10 and 1000 MFLOPs. The
two meta-heuristic schedulers (PN and ZO) clearly pro- 4.5. Poisson distribution
vide more efficient schedules compared to the more simple
heuristic schedulers. This occurs because the meta-heuristic We have randomly generated sets of tasks using a Pois-
schedulers have the ability to explore a wider search space. son distribution and varied the mean. In Fig. 10 we can see
We have also varied the range of task sizes noting the that PN performs the best followed by MM, whilst MX per-
makespan in each case. In Fig. 8 many of the schedulers forms quite badly, when the mean is small. When the mean
provide similarly efficient schedules. This is because the ra- is increased to 100 MFLOPs (see Fig. 11) the batch sched-

Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)
1530-2075/05 $ 20.00 IEEE
10000 14000

9000
12000
8000

7000 10000

6000
8000
Time

Time
5000
6000
4000

3000 4000

2000
2000
1000

0 0
EF LL RR ZO PN MM MX EF LL RR ZO PN MM MX

Figure 9. Makespan when task sizes are Figure 11. Makespan when task sizes have
uniformly distributed between 10 and 10000 a Poisson distributed with a mean of 100
MFLOPs. MFLOPs

10000

9000 utilises the relative error metric internally to find schedules


8000 with a low makespan. Roulette wheel selection is used to ex-
7000
ploit past results to direct the search for efficient schedules.
6000
Cycle crossover promotes exploration of the search space,
with random swaps and random re-balancing of processor
Time

5000
queues within individuals perturbing this exploration.
4000

3000
We have tested our scheduler under various different sce-
2000 narios. To show the generality of our scheduler we used
1000 three different types of random distributions, each with
0
EF LL RR ZO PN MM MX
thousands of different randomly generated sets of tasks and
varying communication overheads.

Figure 10. Makespan when task sizes have The Figs. 5 through 11 show that our scheduler per-
a Poisson distributed with a mean of 10 forms better than the other schedulers. We can conclude that
MFLOPs our scheduler gives better performance over multiple differ-
ent scenarios and would give consistently better efficiency
in unknown conditions compared to the other techniques
ulers all perform well, whilst the immediate mode sched- tested in this study. Our scheduler estimates the communi-
ulers do not perform as well. cation costs between each client and server using historical
information, so it can create better schedules and reduce the
makespan. For the other schedulers, the effect of communi-
5. Conclusion cation is only considered after tasks or batches of tasks have
been scheduled, leading to less efficient solutions.
A scheduling algorithm has been developed to schedule
heterogeneous tasks onto heterogeneous processors in a dis- The algorithm proposed in this paper consistently uses
tributed computing system. It provides efficient schedules processors more efficiently than the current state-of-the-art
and adapts to varying resource availability (processing re- GA algorithms for the same problem. It is more suitable
sources and communication costs). The algorithm also fully for real-world use because it considers properties of dis-
utilises the dedicated processor running the scheduler. The tributed systems, such as variable communication costs and
GA employed a list scheduling heuristic to create a well- variable availability heterogeneous processors, which other
balanced randomised initial population. The fitness function algorithms for the task scheduling problem do not consider.

Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)
1530-2075/05 $ 20.00 IEEE
6. Future work [12] I. M. Oliver, D. J. Smith, and J. Holland. A study of permuta-
tion crossover operators on the traveling salesman problem.
We intend to compare all of the schedulers in Sect. 4 on a In Proceedings of the Second International Conference on
general-purpose distributed system [10]. The system is cur- Genetic Algorithms on Genetic algorithms and their appli-
rently deployed on over 250 heterogeneous PCs and runs cation, pages 224–230. Lawrence Erlbaum Associates, Inc.,
problems from cryptography, bioinformatics, and biomedi- 1987.
cal engineering. This will allow us to test our scheduler un- [13] A. J. Page and T. J. Naughton. Framework for task
der real-world conditions. scheduling in heterogeneous distributed computing using ge-
netic algorithms. In 15th Artificial Intelligence and Cogni-
tive Science Conference, pages 137–146, Castlebar, Ireland,
7. Acknowledgement September 2004.
[14] H. J. Siegel, L. Wang, V. Roychowdhury, and M. Tan. Com-
Support is acknowledged from the Irish Research Coun- puting with heterogeneous parallel machines: advantages
cil for Science, Engineering, and Technology, funded by the and challenges. In Proceedings on Second International
National Development Plan. Symposium on Parallel Architectures, Algorithms, and Net-
works, pages 368–374, Beijing, China, June 1996.
References [15] M. D. Theys, T. D. Braun, H. J. Siegal, A. A. Maciejewski,
and Y.-K. Kwok. Mapping Tasks onto Distributed Hetero-
[1] I. Ahmad, Y.-K. Kwok, I. Ahmad, and M. Dhodhi. Schedul- geneous Computing Systems Using a Genetic Algorithm Ap-
ing parallel programs using genetic algorithms. In A. Y. proach, chapter 6, pages 135–178. John Wiley and Sons,
Zomaya, F. Ercal, and S. Olariu, editors, Solutions to Par- New York, USA, 2001.
allel and Distributed Computing Problems, chapter 9, pages [16] Top 500 Super Computers. http://www.top500.org.
231–254. John Wiley and Sons, New York, USA, 2001. [17] A. Y. Zomaya, M. Clements, and S. Olariu. A framework
[2] A. Chipperfield and P. Flemming. Parallel genetic al- for reinforcement-based scheduling in parallel processor sys-
gorithms. In A. Y. Zomaya, editor, Parallel and Dis- tems. IEEE Transactions on Parallel and Distributed Sys-
tributed Computing Handbook, pages 1118–1143. McGraw- tems, 9(3):249–260, March 1998.
Hill, New York, USA, first edition, 1996. [18] A. Y. Zomaya, R. C. Lee, and S. Olariu. An introduc-
[3] A. Colorni, M. Dorigo, and V. Maniezzo. Distributed opti- tion to genetic-based scheduling in parallel processor sys-
mization by ant colonies. In Proceedings of the First Eu- tems. In A. Y. Zomaya, F. Ercal, and S. Olariu, editors, Solu-
ropean Conference on Artificial Life, pages 134–142, Paris, tions to Parallel and Distributed Computing Problems, chap-
France, 1992. Elsevier. ter 5, pages 111–133. John Wiley and Sons, New York, USA,
[4] J. Dongarra, J. Bunch, C. Moler, and G. Stewart. LINPACK 2001.
Users Guide. SIAM, Philadelphia, USA, 1979. [19] A. Y. Zomaya and Y.-H. Teh. Observations on using ge-
[5] M. R. Garey and D. S. Johnson. Computers and Intractabil- netic algorithms for dynamic load-balancing. IEEE Trans-
ity: A Guide to the Theory of NP-Completeness. W. H. Free- actions on Parallel and Distributed Systems, 12(9):899–911,
man & Co., New York, NY, 1979. September 2001.
[6] F. Glover. Future paths for integer programming and links to [20] A. Y. Zomaya, C. Ward, and B. Macey. Genetic schedul-
artificial intelligence. Computers and Operations Research, ing for parallel processor systems: comparative studies and
13:533–549, May 1986. performance issues. IEEE Transactions on Parallel and Dis-
[7] J. H. Holland. Adaptation in Natural and Artificial Systems. tributed Systems, 10(8):795–812, August 1999.
MIT Press, Cambridge, MA, USA, 1992.
[8] E. Hou, N. Ansari, and H. Ren. A genetic algorithm for mul-
tiprocessor scheduling. IEEE Transactions on Parallel and
Distributed Systems, 5(2):113–120, February 1994.
[9] H. Kasahara and S.Narita. Practical multiprocessing
scheduling algorithms for efficient parallel processing. IEEE
Transactions on Computers, 33(11):1023–1029, November
1984.
[10] T. M. Keane. A general-purpose heterogeneous distributed
computing system. M.Sc. thesis, Department of Computer
Science National University of Ireland, Maynooth, Ireland,
2005.
[11] M. Maheswaran, S. Ali, H. J. Siegel, D. Hensgen, and R. F.
Freund. Dynamic mapping of a class of independent tasks
onto heterogeneous computing systems. Journal of Paral-
lel and Distributed Computing, 59(2):107–131, November
1999.

Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)
1530-2075/05 $ 20.00 IEEE

You might also like