maximizing availability for task scheduling in computational grid using genetic algorithm

18
Maximizing availability for task scheduling in computational grid using genetic algorithm Shiv Prakash and Deo Prakash Vidyarthi* ,School of Computer and Systems Sciences, Jawaharlal Nehru University, New Delhi, India SUMMARY Computational grid provides a wide distributed platform for high-end compute intensive applications. Grid scheduling is often carried out to schedule the submitted jobs on the nodes of the grid so that some characteristic parameter is optimized. Availability of the computational nodes is one of the important characteristic parameters and measures the probability of the node availability for job execution. This paper addresses the availability of the grid computational nodes for the job execution and proposes a model to maximize it. As such, the task scheduling problem in grid is nondeterministic polynomial-time hard, and often, metaheuristics techniques are applied to solve it. Genetic algorithm, a metaheuristic technique based on evolution- ary computation, has been used to solve such complex optimization problem. This work proposes a technique for the grid scheduling problem using genetic algorithm with the objective to maximize availability. Simulation experiment, to evaluate the performance of the proposed algorithm, is conducted, and results reveal the effective- ness of the model. A comparative study has also been performed. Copyright © 2014 John Wiley & Sons, Ltd. Received 16 August 2012; Revised 26 December 2013; Accepted 26 December 2013 KEY WORDS: scheduling; genetic algorithm; load; processing rate; MTTR; MTTF; availability 1. INTRODUCTION Computational grid (CG) [1, 7] primarily processes the compute intensive jobs. Next generation scientic research is being carried out by large collaboration of researchers widely spread across the globe. Research communities are utilizing CG to share, manage, and process the large computational tasks. CG is dened as a software and hardware infrastructure in which both resources and the users may be geographical apart and distributed. It provides consistent, dependable, pervasive, and economical access to high-end computational facilities. CG users demand execution of complex job/task using a smart interface. Grid middleware searches the suitable resources from the pool of grid resources for the job/task execution. The job/task will be scheduled on appropriate compute resources that meet the execution policy of the grid and usersrequirements [6, 7]. Thus, users visualize the grid as an enormous source of computational power facilitating efcient execution of users job/task. Scheduling [1, 7, 911, 14, 15, 42] is often carried out over the grid nodes to optimize one or more characteristic parameters [4]. Makespan, turnaround time, reliability, availability, and so on are some parameters [13, 15]. Availability [5] of a node in the grid is dened as the probability that the node is available for a given time interval. It depends on mean time to failure (MTTF) and mean time to repair (MTTR) of nodes. MTTF is the expected time for two consecutive failures of node. MTTR is the expected time for two consecutive repair of node. If a task is submitted to the grid, availability of resources becomes important for its proper for execution. If the needed resources are available, the task *Correspondence to: Deo Prakash Vidyarthi, School of Computer and Systems Sciences, Jawaharlal Nehru University, New Delhi, India. E-mail: [email protected] Copyright © 2014 John Wiley & Sons, Ltd. CONCURRENCY AND COMPUTATION: PRACTICE AND EXPERIENCE Concurrency Computat.: Pract. Exper. (2014) Published online in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/cpe.3216

Upload: deo-prakash

Post on 16-Feb-2017

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Maximizing availability for task scheduling in computational grid using genetic algorithm

CONCURRENCY AND COMPUTATION: PRACTICE AND EXPERIENCEConcurrency Computat.: Pract. Exper. (2014)Published online in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/cpe.3216

Maximizing availability for task scheduling in computational gridusing genetic algorithm

Shiv Prakash and Deo Prakash Vidyarthi*,†

School of Computer and Systems Sciences, Jawaharlal Nehru University, New Delhi, India

SUMMARY

Computational grid provides a wide distributed platform for high-end compute intensive applications. Gridscheduling is often carried out to schedule the submitted jobs on the nodes of the grid so that somecharacteristic parameter is optimized. Availability of the computational nodes is one of the importantcharacteristic parameters and measures the probability of the node availability for job execution. This paperaddresses the availability of the grid computational nodes for the job execution and proposes a model to maximizeit. As such, the task scheduling problem in grid is nondeterministic polynomial-time hard, and often,metaheuristics techniques are applied to solve it. Genetic algorithm, a metaheuristic technique based on evolution-ary computation, has been used to solve such complex optimization problem. This work proposes a technique forthe grid scheduling problem using genetic algorithm with the objective to maximize availability. Simulationexperiment, to evaluate the performance of the proposed algorithm, is conducted, and results reveal the effective-ness of the model. A comparative study has also been performed. Copyright © 2014 John Wiley & Sons, Ltd.

Received 16 August 2012; Revised 26 December 2013; Accepted 26 December 2013

KEY WORDS: scheduling; genetic algorithm; load; processing rate; MTTR; MTTF; availability

1. INTRODUCTION

Computational grid (CG) [1, 7] primarily processes the compute intensive jobs. Next generation scientificresearch is being carried out by large collaboration of researchers widely spread across the globe. Researchcommunities are utilizing CG to share, manage, and process the large computational tasks. CG is definedas a software and hardware infrastructure in which both resources and the users may be geographical apartand distributed. It provides consistent, dependable, pervasive, and economical access to high-endcomputational facilities. CG users demand execution of complex job/task using a smart interface. Gridmiddleware searches the suitable resources from the pool of grid resources for the job/task execution.The job/task will be scheduled on appropriate compute resources that meet the execution policy of thegrid and users’ requirements [6, 7]. Thus, users visualize the grid as an enormous source ofcomputational power facilitating efficient execution of users job/task.

Scheduling [1, 7, 9–11, 14, 15, 42] is often carried out over the grid nodes to optimize one or morecharacteristic parameters [4]. Makespan, turnaround time, reliability, availability, and so on are someparameters [13, 15]. Availability [5] of a node in the grid is defined as the probability that the node isavailable for a given time interval. It depends on mean time to failure (MTTF) and mean time to repair(MTTR) of nodes. MTTF is the expected time for two consecutive failures of node. MTTR is theexpected time for two consecutive repair of node. If a task is submitted to the grid, availability ofresources becomes important for its proper for execution. If the needed resources are available, the task

*Correspondence to: Deo Prakash Vidyarthi, School of Computer and Systems Sciences, Jawaharlal Nehru University, NewDelhi, India.†E-mail: [email protected]

Copyright © 2014 John Wiley & Sons, Ltd.

Page 2: Maximizing availability for task scheduling in computational grid using genetic algorithm

D. P. VIDYARTHI AND S. PRAKASH

is executed; otherwise, it will wait for the resources. Thus, availability is an important QoS parameter inthe grid environment. Tasks are to be scheduled in a manner that maximizes the nodes availability.

Genetic algorithm (GA) [2, 3], often used to solve complex combinatorial optimization problem, involvesexploring and identifying the best solution from a large search space of potential solutions. GAworks on thebasis of natural selection and evolution. GA uses various operators, for example, selection, crossover, andmutation that are applied over a randomly generated population comprised a set of chromosomes(solutions) [17]. These chromosomes are evaluated against a fitness function derived on the basis of theoptimization objective. Availability is an important parameter as discussed in [26, 27, 29, 35–39]. Thisparameter determines if the grid resources are available for a given period. It is important to maximizeavailability of the grid nodes when a task is being scheduled on it. In the proposed work, GA has beenapplied to optimize the availability of the set of CG nodes in order to execute the job.

This paper is organized as follows. After the introduction in Section 1, Section 2 discusses therelated works. The problem has been elaborated in Section 3. A task scheduling model on CG formaximizing availability is presented in Section 4. Experimental evaluation and their observation areperformed in Section 5 epitomizing the work in Section 6.

2. RELATED WORK

Scheduling problem has been widely discussed in literature [6–11, 13, 42, 43]. As the problem isnondeterministic polynomial-time hard (NP-Hard) [8, 15, 16] because of its larger magnitude of solutions,GA has often been used for solving the scheduling problem [8–12, 14, 15]. Makespan minimization inCG with job scheduling is an important issue to achieve better performance and has been discussed in[1, 13, 17–19]. In [20], modified GA is used to minimize the turnaround time of the jobs in CG.

Load balancing is the act of equally distributing the load among the grid nodes. Although complex, thisis crucial because unequal load distribution results in the increase in overall job completion time. Loadbalancing using GA is elaborated in [21, 22]. A variant of GA, Quantum GA-based scheduling isdiscussed in [23, 24]. In [40], a decentralized approach for genetic scheduling in heterogeneousenvironments has been discussed. In this, authors have proposed an efficient solution that is distributed,fault tolerant, and scalable. Distributed solution implies autonomy and independence in the functioning.

A simulation model for grid scheduling, analysis, and optimization has been discussed in [41]. It alsoproposes a solution integrated with grid monitoring and optimization tool. In [43], CG scheduling thatgives priority to security is discussed. Reliability-based scheduling is proposed in [28, 30] with anobjective of maximizing reliability. Reliability-based scheduling using modified GA is discussed in[30]. Availability has been discussed in literature, although not in context to optimize it with jobscheduling. Availability prediction model that deals with accurate prediction of resources is discussed in[26]. Availability in distributed database, discussed in [31], talks about a scenario when the demand ondata is more than what is available. Availability in software system, discussed in [32, 33], is based onbug fixing and working of the software system. The problem is important because many a time softwaresystems face trouble because of introduction of new environments. Availability assignment usingstochastic model to address the issue of availability in manufacturing engineering is discussed in [34].

Availability in distributed system is discussed in [35, 36]. Availability of Web services dealing withresponse time of on-demand Web resources is discussed in [4, 27, 37, 38]. Availability of web servicesin computational biology is discussed in [39].

The aim, in this paper, is to maximize the availability of the grid nodes for job execution and also toobserve how it affects the makespan.

3. THE PROBLEM

Grid is essentially a collection of various heterogeneous resources. Heterogeneity, in the grid,introduces many challenges that include diversity and dynamic nature of local resources affectingthe creation and management of services for maintaining the QoS. Because grid is inherently aparallel and distributed system [1], the key issues regarding the design of the grid, for example, data

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 3: Maximizing availability for task scheduling in computational grid using genetic algorithm

MAXIMIZING AVAILABILITY IN COMPUTATIONAL GRID USING GENETIC ALGORITHM

locality and availability, implementation, scalability, autonomy, privacy, maintenance, fault tolerance,and security, need to be addressed well before the commercialization of such grid. One of these issues,availability, demanding new technical approaches is discussed in this paper.

Scheduling [8–12, 42] assigns jobs on suitable systems with the objective to optimize somescheduling parameters. As such, scheduling in heterogeneous system [14, 15] is an NP-Hardproblem. CG is a heterogeneous system; therefore, scheduling on grid is also an NP-Hard problemoffering a large search space of possible solutions [16].

The key parameters to define availability are failure rate and repair rate. Failure [5] is defined as thenumber of failures that occurs in a given period. Failure rate is the number of failures per unit time.Repair [5] is defined as the number of repairs performed in a given period. Repair rate is the numberof repairs per unit time.

Computational grid is a repairable system. Repairable system is considered to be discrete becauseduring the working of the system, repairing is required for any kind of failure. The components in thegrid system mostly work, although sometimes may not. Therefore, working of the system is notcontinuous. Working of the system is defined by the functioning of the components of the systemthat is also noncontinuous. Because of this, two parameters, MTTF and MTTR, are used to computethe availability of the system.

The problem addressed, in this paper, is the maximization of the availability of the grid resources(nodes) for the application (jobs) desiring execution. Availability, of the nodes in the grid, is definedas the probability that the nodes are available for a given time interval [5]. It is dependent on MTTFand MTTR. MTTF is the expected time required for two consecutive failures of node, and MTTR isthe expected time required for two consecutive repairs of node. Mean time between failure (MTBF)is defined as the average time between two consecutive failures. Availability is defined as the ratioof MTTF and MTBF. Availability Ai(t), of ith node for time t, is given by Equation 1.

Ai tð Þ ¼ MTTFiMTBFi

(1)

Mean time between failure is the sum of MTTF and MTTR. Therefore,

MTBF ¼ MTTFþMTTR (2)

Substituting the value of MTBF in Equation 1, the availability Ai(t) is derived as Equation 3.

Ai tð Þ ¼ MTTFiMTTFi þMTTRi

(3)

The availability in series arrangement of nodes, in a grid, depends on the failure of at least one node.The availability of m serial components in the series arrangement of the grid node environment [5] isobtained as in Equation 4.

As tð Þ ¼ ∏m

i¼1Ai tð Þð Þ (4)

Where, As(t) is availability of the entire grid system, Ai(t) is the availability of the ith node, and m isthe total number of nodes in the grid environment.

4. THE PROPOSED MODEL

The proposed model considers maximizing availability in CG. It observes how the availability isaffected while scheduling a job in the CG. Some of the important definitions required for the studyare as follows.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 4: Maximizing availability for task scheduling in computational grid using genetic algorithm

D. P. VIDYARTHI AND S. PRAKASH

4.1. Makespan

For a schedule consisting of jobs, makespan is defined as the time required in finishing the latest job [15].Makespan has been discussed here as it is also evaluated for the schedule that maximizes theavailability.

Makespan is derived using queuing theory [1, 25]. The problem falls in the category of M/M/Smodel, and therefore, it is assumed that the load and service rate of ith node is λi and μi,respectively. The waiting time at the ith node, using M/M/S, is given in Equation 5.

λi= μi � λið Þ (5)

Therefore, total time at the ith node for the tasks is computed as in Equation 6.

Xr

j¼1

λi= μi � λið Þ þ 1=μið Þ*δji� �

*NITj

� �(6)

where r is total number of tasks allocated on ith machine, δji is equal to 1 if jth task is allocated on ithmachine and 0 otherwise. NITj is the number of instructions in the jth task.

Time taken on the grid will be the maximum of the time taken on any node of the grid. This timemay be obtained as in Equation 7.

Tk ¼Maxm

i¼1

Xr

j¼1

λi= μi � λið Þ þ 1=μið Þ*δji� �

*NITj

� �#"(7)

where m is the total number of nodes in the grid.Out of many solutions generated, the best solution is obtained as the minimum of all the solutions

(population), which is as given in Equation 8.

Minpopsize h

Maxm

i¼1

hXr

j¼1

λi= μi � λið Þ þ 1=μið Þ*δji� �

*NITj

iiih(8)

Here, popsize is the total number of solutions in the population.

4.2. Availability as fitness function

Fitness function, considered in this work, is the availability of the system. If availability of the systemis known, nonavailability of the system can be calculated. Nonavailability can be used for moreefficient resource scheduling in the grid because it gives the information about the resources.

As grid is a type of parallel system, availability of the system can be derived using Equations 1, 2,and 3. Independent task scheduling in grid assumes parallel arrangement of nodes in the grid. In theparallel arrangement, system is unavailable when all the nodes fail. Availability of m parallelcomponents in the parallel grid node environment [5] is given by Equation 9.

Ap tð Þ ¼ 1� ∏m

i¼11� Ai tð Þð Þ

��(9)

where Ap(t) is the availability of the grid system in consideration, Ai(t) is the availability of the ith node,and m is the number of nodes being used for job execution.

The objective is to maximize the availability of the grid system, given in Equation 10.

Maxpopsize

i¼1Ap tð Þ� �

(10)

Popsize is the size of population considered in the problem.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 5: Maximizing availability for task scheduling in computational grid using genetic algorithm

MAXIMIZING AVAILABILITY IN COMPUTATIONAL GRID USING GENETIC ALGORITHM

4.3. The model

The proposed model uses GA to maximize the availability of the set of nodes for the submitted job/task.Various structures and functions (pseudocode) used for the purpose have been discussed in the following texts.

Chromosome structure of the problem, [12] is as follows.

Struct task {int task_ no; double task size} task;Struct node {double load; double processing speed, double MTTR, double MTTF} node;Struct chromosome {tasks; nodes; double availability};

4.3.1. Uniform crossover. Thiswork uses uniformcrossover for the purpose [12, 21, 22],which is as follows.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 6: Maximizing availability for task scheduling in computational grid using genetic algorithm

D. P. VIDYARTHI AND S. PRAKASH

4.3.2. Mutation. The mutation operator is as follows [12, 21, 22]:

void mutation (solution &population, m, n){Randomly pick the chromosome and change it with mutation probability}

4.3.3. Inversion. The inversion operator [2] is as follows:

void inversion (solution &population){Randomly select the part (substring) of chromosome and reverse the part}

Each chromosome of the initial population is randomly generated. The random generation is derivedfrom the concept of random permutation. Uniform crossover [12, 21, 22] is used in the proposed model.Mutation and inversion have also been applied with probability Pm and Pi, respectively.

Availability-based GA (AGA) uses GA and availability as the fitness function.

The self explanatory AGA is as follows:

4.3.4. Availability-based genetic algorithm

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 7: Maximizing availability for task scheduling in computational grid using genetic algorithm

MAXIMIZING AVAILABILITY IN COMPUTATIONAL GRID USING GENETIC ALGORITHM

Makespan using GA is obtained using algorithm discussed in [1].The proposed algorithm is explained as follows. Initially, global scheduler randomly distributes the task

to the grid nodes. This is initial population generation. The availability and makespan are calculated foreach population. The availability is considered as the fitness of each population. Population is sorted indescending order of fitness. Best half of the population is selected. The probability of crossover,mutation, and inversion may be obtained by the tuning the experiments. In the proposed model, uniformcrossover is applied with probability 0.7, mutation with probability 0.05, and inversion with probability0.01. New population is generated and is mixed with old population. Now, again, the availability andmakespan are calculated for each population. This procedure is repeated until the stopping criterion ismet. In each generation, topmost value is selected and stored in the final availability. The optimal sizeof population and number of generation are identified by conducting number of experiments.

5. EXPERIMENTAL EVALUATIONS

Performance of the proposed algorithm is evaluated in this section by simulation. An exhaustiveevaluation is performed by varying different parameters related with the experiment. Convergence ofthe solution depends on the size of input data and has been shown along with the experiments.Simulation software is designed in C++. Each experiment studies the effect of specific parametersby varying it in that particular experiment, whereas other parameters remain constant in thatexperiment. Values of constant parameters for the experiment are given in Table I. Data used in theexperiments are randomly generated with uniform distribution between the given ranges.

5.1. Experiment with varying mean time to failure

The first experiment is to observe the effect of MTTF on availability. In this experiment, the number ofnodes considered in the grid is 16, number of tasks are 100, and four ranges of MTTF is taken (inseconds). Other input parameters values are taken from Table I.

From Figure 1, it is observed that when MTTF increases, availability also increases. In case of MTTFbetween 900 and 1000 s, availability is 0.7787 that becomes 0.8201 when MTTF lies between 1000 and1100 s, 0.8557 for MTTF in 1100–1200 s, and further 0.8861 for MTTF in 1200–1300 s. Solutionconverges by 200 generations.

To study the effect of system scaling on availability, the next experiment considers the number ofnodes in the grid as 1000. Number of tasks are 1,000,000, and again, four ranges of MTTF is taken(in seconds). Other input values are taken from Table I.

The observation from Figure 2 is that when system is scaled, it takes more generations (2000) for theconvergence of the solution, although it is still faster even for scaled data. Also, when MTTF increases,availability increases, that is, for MTTF between 900 and 1000 s, availability is 0.110214 that becomes

Table I. Input parameters.

Parameter Input

Number of nodes Minimum 16Maximum 1000

Number of tasks Minimum 50Maximum 1,000,000

Range of load (λ) 1–100MIPSRange of processing speed (μ) 101–200MIPSMTTR 10–110 sMTTF 900–1000 sRange of task size 2000–5000MIPopulation size 50Probability of applying crossover 0.7Probability of applying mutation 0.05Probability of applying inversion 0.01

MTTR, mean time to repair; MTTF, mean time to failure.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 8: Maximizing availability for task scheduling in computational grid using genetic algorithm

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

1 29 57 85 113 141 169 197

Ava

ilab

ility

Generation

Availability Observation

900-1000 Seconds

1000-1100 Seconds

1100-1200 Seconds

1200-1300 Seconds

MTTF

Figure 1. Availability observation with different mean time to failure (MTTF).

MTTF

Figure 2. Availability observation on scaled system with different mean time to failure (MTTF).

D. P. VIDYARTHI AND S. PRAKASH

0.119407 for MTTF between 1000 and 1100 s, 0.126391 for MTTF between 1100 and 1200 s, andfurther 0.131364 for MTTF between 1200 and 1300 s. Analyzing Figures 1 and 2, it is clear that onincreasing number of nodes and number of tasks, availability decreases.

5.2. Experiment with varying mean time to repair

The next experiment studies the effect of MTTR on availability, so MTTR is varied. Number of nodesconsidered in the grid is 16, number of tasks are 100, and MTTR is taken in seconds. Table I containsother input values for the experiment.

Figure 3 makes it clear that when MTTR increases, availability decreases as it takes more time tomake the nodes available. When MTTR is in the range of 10–110 s, availability is 0.7787 thatdecreases to 0.7259 for MTTR between 110 and 210 s, 0.6784 for MTTR between 210 and 310 s,and 0.6279 for MTTR between 310 and 410 s. Result converges by 200 generations.

Again, by scaling the system, effect of varying MTTR is observed on availability. For this, numberof nodes and tasks are increased to 1000 and 1,000,000, respectively, with varying MTTR values.Other input values are taken from Table I.

Figure 4 shows that by scaling the system, it takes around 2000 generations for the solution toconverge. For various ranges of MTTR values, availability is as follows. For MTTR between 10 and110 s, availability is 0.127460; for MTTR between 110 and 210 s, availability is 0.122765; forMTTR between 210 and 310 s, availability is 0.117808; and for MTTR in the range of 310–410 s,

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 9: Maximizing availability for task scheduling in computational grid using genetic algorithm

0.5

0.55

0.6

0.65

0.7

0.75

0.8

1 29 57 85 113 141 169 197

Ava

ilab

ility

Generation

Availability Observation

10-110 Seconds

110-210 Seconds

210-310 Seconds

310-410 Seconds

MTTR

Figure 3. Availability observation with different mean time to repair (MTTR).

0.04

0.05

0.06

0.07

0.08

0.09

0.1

0.11

0.12

0.13

0.14

110

019

929

839

749

659

569

479

389

299

110

9011

8912

8813

8714

8615

8516

8417

8318

8219

81

Ava

ilab

ility

Generation

Availability Observation

310-410 Seconds

210-310 Seconds

110-210 Seconds

10-110 Seconds

MTTR

Figure 4. Availability observation on scaled system with different mean time to repair (MTTR).

MAXIMIZING AVAILABILITY IN COMPUTATIONAL GRID USING GENETIC ALGORITHM

availability is 0.110214. Comparing Figures 3 and 4, it is observed that by scaling up the number ofnodes and the number of tasks, availability decreases.

5.3. Experiment with varying task size

In this experiment, effect of task size is studied on availability by varying the size of the taskssubmitted to the grid. Number of nodes considered in the grid is 16, and number of tasks are 100.MTTF for this experiment is taken in the range of 1300–1400 s as lower values of MTTF do notclearly distinguish the result in the graph. Task size, taken in various ranges, is depicted in millioninstructions (MI). Other input values are taken from Table I.

From Figure 5, it is observed that when the task size increases, availability decreases. In case of tasksize in the range of 2000–5000MI, availability is 0.9142; for task size 2200–5200MI, availability is0.8645; for task size 2400–5400MI, it is 0.8244; and for task size 2600–5600MI, it is 0.7891.Result converges by 200 generations.

Again, experiment is conducted to study the scaling effect on availability with varying task size. Forthis, the number of nodes considered in the grid is 1000, and the number of tasks is 1,000,000. Otherinput values are taken from Table I.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 10: Maximizing availability for task scheduling in computational grid using genetic algorithm

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1 29 57 85 113 141 169 197

Ava

ilab

ility

Generation

Availability Observation

2000-5000 MI

2200-5200 MI

2400-5400 MI

2600-5600 MI

Task Size

Figure 5. Availability observation with different task size.

D. P. VIDYARTHI AND S. PRAKASH

Figure 6 says that for scaled values, solution converges by 2000 generations. Also, onincreasing task size, availability decreases as is the case earlier. It is because increasing tasksize acquires more resources for more time resulting in decrease of availability. Also, clearfrom Figures 5 and 6 that on increasing the number of nodes and the number of tasks,availability decreases.

5.4. Experiment with varying number of tasks

This experiment observes the availability by varying the number of tasks. The number of nodesconsidered in the grid is 16. Other input values are taken from Table I.

It is clear from Figure 7 that when the number of tasks increases, availability decreases sharply. For50 tasks, availability is 0.8813 that becomes 0.7787 for 100 tasks, 0.6899 for 150 tasks, and further0.6250 for 200 tasks.

For scaled values, this experiment observes the availability with varying number of tasks. Numberof nodes is 1000. Table I contains other input parameters.

For scaled system, solution converges by 2000 generations as observed from Figure 8. Also, onincreasing number of tasks, availability decreases. Availability in case of 970,000 tasks is 0.128908that becomes 0.125118 for 980000 tasks, 0.119190 for 990000 tasks, and further 0.110214 for1,000,000 tasks. The decrease in availability is obvious on system scaling.

0.01

0.03

0.05

0.07

0.09

0.11

0.13

110

019

929

839

749

659

569

479

389

299

110

9011

8912

8813

8714

8615

8516

8417

8318

8219

81

Ava

ilab

ility

Generation

Availability Observation

2000-5000 MI

2200-5200 MI

2400-5400 MI

2600-5600 MI

Task Size

Figure 6. Availability observation on scaled system with different task size.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 11: Maximizing availability for task scheduling in computational grid using genetic algorithm

0.50.550.6

0.650.7

0.750.8

0.850.9

0.95

1 29 57 85 113 141 169 197

Ava

ilab

ility

Generation

Availability Observation

50 Tasks

100 Tasks

150 Tasks

200 Tasks

Number of Tasks

Figure 7. Availability observation with different number of tasks.

0.03

0.05

0.07

0.09

0.11

0.13

0.15

110

019

929

839

749

659

569

479

389

299

110

9011

8912

8813

8714

8615

8516

8417

8318

8219

81

Ava

ilab

ility

Generation

Availability Observation

100000 Tasks

990000 Tasks

980000 Tasks

970000 Tasks

Number of Tasks

Figure 8. Availability observation for scaled system with different number of tasks.

MAXIMIZING AVAILABILITY IN COMPUTATIONAL GRID USING GENETIC ALGORITHM

5.5. Experiment with varying number of nodes

Experiment on performance evaluation of the model also studies the effect when the number of nodesin the grid varies. For the experiment, 8, 16, 24, and 32 nodes are considered in the grid. Table Icontains other input parameters.

Figure 9 depicts that when the number of nodes increases, availability increases. In the experiment,with eight nodes availability is 0.7175 that becomes 0.7787 with 16 nodes, 0.8499 with 24 nodes, andfurther 0.9175 with 32 nodes. More nodes give the possibility of more availability.

Observation is also made for scaled system with number of nodes in the grid to 700, 800, 900, and1000 and number of tasks to 1,000,000. Table I contains other input parameters. Observations are asgiven in Figure 10.

Result of Figure 10 is on similar lines to that of Figure 9 except that it takes 2000 generations for thesolutions to converge. Comparing Figures 9 and 10, it is clear that for increasing number of nodes andthe number of tasks, availability decreases.

5.6. Experiment with varying processing speed nodes

Speed of the processing nodes has been varied in this experiment. The number of nodes considered inthe grid is 16. All other input values are from Table I.

Figure 11 depicts that when speed of the processing node increases, availability increases. It is0.7787 with processing speed 101–200MI per second (MIPS), 0.8240 for speed 110–210MIPS,

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 12: Maximizing availability for task scheduling in computational grid using genetic algorithm

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1 29 57 85 113 141 169 197

Ava

ilab

ility

Generation

Availability Observation

8 Nodes

16 Nodes

24 Nodes

32 Nodes

Number of Nodes

Figure 9. Availability observation with different number of nodes.

0.01

0.03

0.05

0.07

0.09

0.11

0.13

1

100

199

298

397

496

595

694

793

892

991

1090

1189

1288

1387

1486

1585

1684

1783

1882

1981

Ava

ilab

ility

Generation

Availability Observation

1000 nodes

900 nodes

800 nodes

700 nodes

Number of Nodes

Figure 10. Availability observation with different number of nodes.

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1 29 57 85 113 141 169 197

Ava

ilab

ility

Generation

Availability Observation

101-200 MIPS

110-210 MIPS

120-220 MIPS

130-230 MIPS

Processing Speed

Figure 11. Availability observation with varying processing speed of nodes.

D. P. VIDYARTHI AND S. PRAKASH

0.8596 for speed 120–220MIPS, and 0.8889 for speed 130–230MIPS. Theoretically, if processingspeed of the nodes increases, the nodes process the tasks faster. Even if the MTTF and MTTRremain the same, longer task will be processed in lesser time, and thus, the availability increases.

To study the effect of large number of nodes and tasks by varying the processing speed of thenodes, experiment has been conducted with 1000 nodes and 1,000,000 tasks. Other input values aretaken in Table I.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 13: Maximizing availability for task scheduling in computational grid using genetic algorithm

MAXIMIZING AVAILABILITY IN COMPUTATIONAL GRID USING GENETIC ALGORITHM

Figure 12 says that solution converges by 2000 generations. Trend of availability increase withincrease in processing speed of node continues. Comparing Figures 11 and 12, it is found that onincreasing the number of nodes and the number of tasks, availability decreases.

5.7. Experiment with varying load on nodes

Experiment has been conducted by varying the load on the number of nodes. For this experiment,number of nodes considered in the grid is 16. Table I contains other input values.

Figure 13 indicate that when load on node decreases, availability increases. It is in case of load1–100MIPS, 0.7787 that becomes 0.7938 when load is 1–90MIPS, 0.8127 for load 1–80MIPS, and0.8365 for 1–70MIPS. Lesser load on node results in more availability, as system has to processless and will be quickly available.

Observation is taken with scaled data again. The number of nodes is increased to 1000 and numberof tasks to 1,000,000. Other input values are taken in Table I.

Figure 14 clearly says that it takes 2000 generations now for the solution to converge with the scaledvalues. Increase in availability with decrease in load of node continues.

5.8. Comparative study of simple genetic algorithm and the proposed model

An experiment has been designed to compare simple GA-based model and AGA-based model for thecomparison of makespan and availability. The author did not find any model that optimizes availabilityas the QoS parameter, so comparison is made with a model that optimizes makespan.

0.03

0.05

0.07

0.09

0.11

0.13

0.15

110

019

929

839

749

659

569

479

389

299

110

9011

8912

8813

8714

8615

8516

8417

8318

8219

81

Ava

ilab

ility

Makespan

Availability Observation

101-200 MIPS

110-210 MIPS

120-220 MIPS

130-230 MIPS

Processing Speed

Figure 12. Availability observation for scaled system with varying processing speed of nodes.

0.6

0.65

0.7

0.75

0.8

0.85

1 29 57 85 113 141 169 197

Ava

ilab

ility

Generation

Availability Observation

1-100 MIPS

1-90 MIPS

1-80 MIPS

1-70 MIPS

Load

Figure 13. Availability observation with different loads in nodes.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 14: Maximizing availability for task scheduling in computational grid using genetic algorithm

0.03

0.05

0.07

0.09

0.11

0.13

1

100

199

298

397

496

595

694

793

892

991

1090

1189

1288

1387

1486

1585

1684

1783

1882

1981

Ava

ilab

ility

Generation

Availability Observation

1-100 MIPS

1-90 MIPS

1-80 MIPS

1-70 MIPS

Load

Figure 14. Availability observation for scaled values with varying node load.

D. P. VIDYARTHI AND S. PRAKASH

5.8.1. Comparative study of makespan. In this subsection, makespan is calculated corresponding tothe schedule obtained in order to maximize availability. Comparison is performed with the modelthat uses GA to minimize makespan.

Experiment has been conducted for 50, 100, 150, and 200 tasks. For the experiments inFigure 15 (50 and 100 tasks), MTTF is in the range of 900–1000 s, and MTTR is in the range of10–110 s. Whereas for 150 and 200 tasks (Figure 16), MTTF is in the range of 900–1000 s, andMTTR is in the range of 300–400 s. Range of MTTR is increased so that availability could beobserved in figure. Number of nodes considered in the grid is 16. Other values are taken fromTable I.

From Figure 15, it is clear that AGA-based model incurs more makespan in comparison with GA-based model. Makespan for 50 tasks using simple GA model is 91.2198 that has increased to 94.8426with AGA-based model. Similarly, for 100 tasks, makespan is 112.87 with simple GA-based modeland 117.951 with AGA-based model.

Figure 16 says that makespan for 150 tasks with simple GA-based model is 181.638 that increases to183.901 with AGA-based model. For 200 tasks, it is 247.825 with simple GA-based model and250.601 with AGA-based model.

Obvious from Figures 15 and 16 is that simple GA-based model offers better makespan than theproposed AGA-based model. The reason for this is the fitness function. Simple GA-based modeloptimizes the makespan, whereas proposed AGA-based model optimizes the availability. The

70

90

110

130

150

170

190

1 22 43 64 85 106 127 148 169 190

Mak

esp

an

Generation

Makespan Observation

GA with 50 Tasks

AGA with 50 Tasks

GA with 100 Tasks

AGA with 100 Tasks

Figure 15. Makespan observation with 50 and 100 tasks.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 15: Maximizing availability for task scheduling in computational grid using genetic algorithm

140160180200220240260280300320340

1 22 43 64 85 106 127 148 169 190

Mak

esp

an

Generation

Makespan Observation

GA with 150 Tasks

AGA with 150 Tasks

GA with 200 Tasks

AGA with 200 Tasks

Figure 16. Makespan observation with 150 and 200 tasks.

MAXIMIZING AVAILABILITY IN COMPUTATIONAL GRID USING GENETIC ALGORITHM

proposed model gives emphasis to availability, not makespan, although the difference in the makespanvalue from both the models is not much significant.

5.8.2. Comparative study of availability. In this subsection, availability is calculated correspondingto the schedule obtained with simple GA-based model to minimize makespan. Availability obtainedwith the proposed AGA-based model is compared with the availability calculated with simpleGA-based model.

Experiment has been conducted for 50, 100, 150, and 200 tasks. The number of nodes considered inthe grid is 16. Other values are taken from Table I. For the experiments in Figure 17, the number oftasks is 50 and 100, and in Figure 18, the number of tasks is 150 and 200.

It is clear from Figure 17 that AGA performs better than GA-based model for availability. For 50tasks, availability with AGA model is 0.8813 and for simple GA model is 0.8792. Further, for 100tasks, availability corresponding to AGA model is 0.7787 and for simple GA model is 0.7759.

Again, obvious from Figure 18 that is for 150 tasks, availability with AGA model is 0.6899 thatbecomes 0.6870 with simple GA-based model. For 200 tasks, availability is 0.6250 that becomes0.6212 with AGA-based and GA-based models, respectively.

Obvious from Figure 17 and 18 is AGA-based model performs better when the objective isavailability maximization, although makespan obtained corresponding to the schedule is a little high.Thus, it sacrifices a little makespan in order to give preference to availability.

0.68

0.73

0.78

0.83

0.88

0.93

1 11 21 31 41 51 61 71 81 91 101

111

121

131

141

151

161

171

181

191

Ava

ilab

ility

Generation

Availability Observation

AGA with 50 Tasks

AGA with 100 Tasks

GA with 50 Tasks

GA with 100 Tasks

Figure 17. Availability observation with 50 and 100 tasks.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 16: Maximizing availability for task scheduling in computational grid using genetic algorithm

0.53

0.55

0.57

0.59

0.61

0.63

0.65

0.67

0.69

0.71

1 10 19 28 37 46 55 64 73 82 91 100

109

118

127

136

145

154

163

172

181

190

199

Ava

ilab

ility

Generation

Availability Observation

AGA with 150 Tasks

AGA with 200 Tasks

GA with 150 Tasks

GA with 200 Tasks

Figure 18. Availability observation with 150 and 200 tasks.

D. P. VIDYARTHI AND S. PRAKASH

6. CONCLUSION

Over the past few years, research and developments in grid computing has gone enormous. Grid, beinga highly heterogeneous system, exerts lot of constraints. Availability is an important issue in the CGthat has largely being ignored, so the authors have addressed the availability issue in this paper.

This work deals with the proposal of a grid scheduling algorithm with emphasis on the availability. Ituses a metaheuristic technique GA for the purpose. Seven cases have been considered to observe nodeavailability in the grid during execution. In the first case, it is concluded that if MTTF increases,availability increases. The second case concludes that with the increase in MTTR, availabilitydecreases. The third case exhibits that the increase in task size leads to the decrease in availability.Observation in the fourth case is when the number of tasks increases, availability decreases. The fifthcase says that when the number of task increases, availability decreases. The sixth case depicts thatwhen number of nodes in the grid environment increases, availability increases. Conclusion of theseventh case is that with the increase in processing speed of the nodes, availability increases, andwith the decrease in load on the node, availability increases. Finally, a comparative study of theproposed AGA-based model with simple GA-based model for makespan and availability epitomesthat if availability is maximized, makespan increases, although increase is not much significant.

The proposed model optimizes the availability using a metaheuristic technique GA. It can be a goodchoice for the scheduler when availability is the prime concern.

ACKNOWLEDGEMENTS

The authors would like to accord their sincere thanks to the anonymous reviewers of the paper for theirvaluable suggestions resulting in the quality improvement of this paper.

REFERENCES

1. Prakash S, Vidyarthi DP. Observations on effect of IPC in GA based scheduling on computational grid. InternationalJournal of Grid and High Performance Computing 2012; 4(1):67–80.

2. Goldberg DE. Genetic Algorithms in Search Optimization and Machine Learning. Pearson Education: India, 2005.3. Mitchell M. An Introduction to Genetic Algorithms. PHI: India, 2006.4. Menasce DA, Casalicchiop E. Quality of service aspects and metric in grid computing. In Proceedings of Computer

Measurement Group Conference, 2004; 511–532.5. Koren I, Krishna CM. Fault Tolerant Systems. Morgan Kaufmann is an imprint of Elsevier: New York, 2007.6. Berman FG, Anthony F, Hey JG. Grid Computing: Making the global infrastructure a reality. John Wiley and Sons,

2003.7. Foster I, Kesselman C. The Grid 2: Blueprint for a New Computing Infrastructure. Morgan Kaufmann Publishers is

an Imprint of Elsevier: New York, 2004.8. Garey MR, Johnson DS. Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman

and Company: New York, 1979.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 17: Maximizing availability for task scheduling in computational grid using genetic algorithm

MAXIMIZING AVAILABILITY IN COMPUTATIONAL GRID USING GENETIC ALGORITHM

9. Buyya R, Abramson D, Giddy J. Nimrod/G: an architecture for resource management and scheduling system in aglobal computational grid. In Proceedings of the High Performance Computing Asia, China, IEEE, USA, 2000;1:283–289.

10. Tripathi AK, Sarker BK, Kumar N, Vidyarthi DP. A GA based multiple task allocation considering load. Interna-tional Journal of High Speed Computing 2000; 11(4):203–214.

11. Vidyarthi DP, Sarker BK, Tripathi AK, Yang LT. Scheduling in Distributed Computing Systems: Analysis, Design,and Models. Springer: New York, 2009.

12. Aggarwal M, Kent RD, Ngom A. Genetic algorithm based schedulers for the computational grids. InternationalSymposium on High Performance Computing Systems and Applications, IEEE 2005; 1:209–215.

13. Tiwari PK, Vidyarthi DP. Observing the effect of inter-process communication in auto controlled ant colonyoptimization-based scheduling on computational grid. Concurrency and Computation: Practice and Experience,Wiley 2014; 26(1):241–270.

14. Abawajy JH. Automatic job scheduling policy for grid computing. LNCS, Springer, Berlin 2005; 3516:101–104.

15. Xhafa F, Abraham A. Meta-heuristics for grid scheduling problems. Studies in Computational Intelligence Series,Springer, Berlin 2008; 146:1–37.

16. Xhafa F, Abraham A. Computational models and heuristic methods for grid scheduling problems. Future GenerationComputer Systems, Elsevier 2010; 26(4):608–621.

17. Carretero J, Xhafa F, Abraham A. A genetic algorithm based schedulers for grid computing systems. InternationalJournal of Innovative Computing, Information and Control 2007; 3(6):1053–1071.

18. Chen WN, Zhang J. An ant colony optimization approach to grid work flow scheduling problem with variousQoS requirements. IEEE Transactions on Systems, Man and Cybernetics-Part C: Applications and Reviews2009; 39(1):29–43.

19. Raza Z, Vidyarthi DP. GA based scheduling model for computational grid to minimize turnaround time. Interna-tional Journal of Grid and High Performance Computing 2009; 1(4):70–90.

20. Raza Z, Vidyarthi DP. Scheduling model for computational grid to minimize turnaround time using modified GA.International Journal of Artificial Intelligence 2009; 3(A49):86–106.

21. Prakash S, Vidyarthi DP. Load balancing in computational grid using genetic algorithm. International Journal ofAdvances in Computing, Scientific and Academic Publishing 2011; 1(1):8–17.

22. Prakash S, Vidyarthi DP. A model for load balancing in computational grid. In Proceedings of 18th annualInternational conference on High Performance Computing (HiPC’11) Bangalore, 2011; 1–5.

23. Prakash S, Vidyarthi DP. A novel scheduling model for computational grid using quantum genetic algorithm.Journal of Supercomputing Springer 2013; 65(2):742–770.

24. Gu J, Gu X, Gu M. A novel parallel quantum genetic algorithm for stochastic job shop scheduling. Journal ofMathematical Analysis and Applications 2009; 355(1):63–81.

25. Cooper RB. Introduction to Queuing Theory. Elsevier North Holland Publications: New York, 1981.26. Rood B, Lewis MJ. Availability prediction based replication strategies for grid environments. In Proceedings of the

10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing, IEEE Computer SocietyWashington, DC, 2010; 25–33.

27. Mani A, Nagarajan A. Understanding quality of service for web services. http://www.ibm.com/developerworks/webservices/library/ws-quality[1 January 2012]

28. Raza Z, Vidyarthi DP. Reliability based scheduling model for computational grid. International Journal ofDistributed Systems and Technologies 2011; 2(2):20–37.

29. Trivedi KS. Probability Statistics with Reliability, Queuing and Computer Science Applications. John Wiley andSons: New York, 2001.

30. Raza Z, Vidyarthi DP. Computational grid scheduling to maximize reliability using modified GA. InternationalJournal of Grid and High Performance Computing 2011; 3(1):1–20.

31. Lee H. An evaluation method for the availability of a distributed databases management system. Information andManagement, Elsevier 1993; 24(4):203–208.

32. Tokuno K, Yamada S. Availability based software performability model with user perceived performance degrada-tion. International Journal of Software Engineering and Its Applications 2010; 4(1):1–14.

33. Pressman RS. Software Engineering, Practitioner Approach. Tata McGraw Hill: India, 2009.34. Trivedi KS, Kim DS, Ghosh R. System availability assessment using stochastic model. Applied Stochastic Models in

Business Industry Wiley 2013; 29(2):94–102.35. Malluhi QM, Johnston WE. Coding for high availability of distributed-parallel storage. IEEE Transactions on

Parallel and Distributed Systems 1998; 9(12):1237–1252.36. Cao Y, Sun H, Trivedi KS, Han JJ. System availability with non-exponentially distributed outages. IEEE

Transactions on Reliability 2002; 51(2):193–198.37. Wu Z, Luo J. The measurement model of grid QoS. In Proceedings of the 10th International Conference on Computer

Supported Cooperative Work in Design, 2006; 1–6.38. Plestys R, Vilutis G, Sandonavicius D. The measurement of grid QoS parameters. In Proceedings of the 29th

International Conference on Information Technology Interfaces (ITI), 2007; 703–708.39. Schultheiss SJ, Munch MC, Andreeva GD, Ratsch G. Persistence and availability of web services in computational

biology. PLoS ONE 2011; 6(9):1–12.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe

Page 18: Maximizing availability for task scheduling in computational grid using genetic algorithm

D. P. VIDYARTHI AND S. PRAKASH

40. Iordache GV, Boboila MS, Pop F. A decentralized strategy for genetic scheduling in heterogeneous environments.LNCS, Springer, Berlin 2006; 4276:1234–1251.

41. Pop F, Dobre CM, Godza G, Cristea V. A simulation model for grid scheduling analysis and optimization. Interna-tional Symposium on Parallel Computing in Electrical Engineering (PARELEC 2006), Bialystok. IEEE: Poland,2006; 133–138. DOI:10.1109/PARELEC.2006.8

42. Pinedo ML. Scheduling: Theory, Algorithms, and Systems. Springer: New York, 2008.43. Kashyap R, Vidyarthi DP. Security-aware scheduling model for computational grid. Concurrency and Computation:

Practice and Experience, Wiley 2012; 24(12):1377–1391.

Copyright © 2014 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2014)DOI: 10.1002/cpe