Top Banner
Fault-Tolerant Scheduling Algorithm with Re-allocation for Divisible Loads on Homogeneous Distributed System Wuning Tong, Song Xiao, Hongbin Li Abstract—High performance computing is facing a major challenge due to its increasing failure rate. Fault tolerance needs to be used to ensure the efficient progress and correct termination of its applications when failures occur. In this paper, the divisible load fault-tolerant scheduling problem on the homogeneous distributed system is addressed, where communication is in the non-blocking message receiving mode, and both processors and communication links have the same speed and start-up overhead. First, the workload for each processor has been derived with the fault checkout overhead and checkout time consumption taken into account. Second, a checkout strategy which works better for divisible loads has been employed to reduce time consumption and checkout overhead. Third, an efficient algorithm for fault workload re- distribution has been proposed. Finally, some simulation experi- ments have been conducted. The result shows that the proposed algorithm is effective. It can minimize the expected execution time and reduce the time consumed by fault-tolerance. Index Terms—divisible loads, distributed system, re- allocation, fault tolerance I. I NTRODUCTION I N recent years, efforts have been made to handle large computation problems(e.g. big data) by using distributed computing systems[1], [2]. In this novel field, researchers have been working to find an optimized algorithm to end the load of massive processors to minimize the span[3]. Divisible loads are parallel tasks which can be partitioned into fractions discretionarily, all of which can be processed irrelevantly. The Divisible Loads Theory(DLT) has been investigated in the past decades[4].More literature has focused on the application of Divisible Loads Scheduling(DLS) with high- performance computing to heterogeneous and homogeneous distributed systems[5], [6], [7], [8], [9], [10].Varied schedul- ing algorithms for homogeneous or heterogeneous systems with different network topologies or conditions have been derived to minimize the makespan [11], [12]. Heteroge- neous systems with different computation and communica- tion speeds have been used to solve the realistic computation problems. For heterogeneous star/tree networks, some ex- pressions for optimal processing time were obtained by a va- riety of methods. Meanwhile, some researchers analyzed the effect of load distribution sequences on the processing time Manuscript received July 19, 2017; revised October 21, 2017. This work is supported by National Natural Science Foundation of China (No.81102610, 81503667 and 81473559) Wuning Tong is with the Shaanxi University of Chinese Medicine, Xianyang, Shaanxi 712046, China, e-mail: [email protected]. Song Xiao is with the Key Research Laboratory of Radar Armament and Utilization Engineering, Air Force Early Warning Academy, Wuhan 430019, China, e-mail: [email protected]. Hongbin Li is with the Affiliated Hospital of Shaanxi University of Chinese Medicine, Xianyang, Shaanxi 712046, China of the load. The optimal distribution sequence of the task scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not on the computation speed of the processors but on the communication speed between processors in the distributed system. The order of communication speed reduction is the optimal sequence of load distribution. Shang[12] took communication and computation start-up overheads into ac- count and proposed a more common and practical model for heterogeneous distributed systems depending on the non- blocking mode of communications. Meanwhile, it is shown that the start-up overhead and workload distribution sequence have an effect on the processing time. For the purpose of fault-tolerance, we take checkout start-up overhead and checkout time consumption into account in this paper. In order to simplify the problem, a closed-form expression for optimal processing time is obtained on a homogeneous distributed system. High performance computing is facing a major challenge due to its increasing failure rate[15]. Fault tolerance needs to be used to ensure the efficient progress and correct termination of its application when failures occur. A large number of fault-tolerant techniques have been developed[16], [17], [18], [19]. Several techniques have been developed with varying levels of granularity. There are two major methods: (1)Primary backup (PB), and (2)Checkpoint. Fault-tolerant scheduling is designed on the heterogeneous system[18], [20]. Mohammad proposed a dynamic fault tol- erant scheduling method[21], the loads classified into critical and noncritical ones based on load utilization and the time it takes the scheduler to allocate resources to the incoming load. Noncritical loads are scheduled on a single processor, and checkpoint with rollback is applied to them when a failure occurs. These methods are all designed for independent real- time tasks. In other words, they are not suitable for divisible loads. There is a large amount of literature focusing on the checkpoint strategies for divisible loads. The corresponding scheduling is to divide the load into several chunks and do checkpointing after each of the chunks. Daly[22] studied periodic checkpoint strategies(chunks of the same size) for exponentially distributed failures and improved his study on the effect of approximate optimal checkpoint periods. Robert investigated the complexity of scheduling computational loads for exponentially distributed failures in literature[23]. If a failure occurs, rollback and recovery are adopted for re- execution to be done from the last checkpoint. Guillaume in[24] aimed to minimize energy consumption when ex- ecuting a divisible workload within a bound in the total execution time, and he took a checkpoint at the end of the execution of each chunk. A large amount of evidence shows IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09 (Advance online publication: 28 August 2018) ______________________________________________________________________________________
8

Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

Mar 14, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

Fault-Tolerant Scheduling Algorithm withRe-allocation for Divisible Loads on

Homogeneous Distributed SystemWuning Tong, Song Xiao, Hongbin Li

Abstract—High performance computing is facing a majorchallenge due to its increasing failure rate. Fault toleranceneeds to be used to ensure the efficient progress and correcttermination of its applications when failures occur. In thispaper, the divisible load fault-tolerant scheduling problemon the homogeneous distributed system is addressed, wherecommunication is in the non-blocking message receiving mode,and both processors and communication links have the samespeed and start-up overhead. First, the workload for eachprocessor has been derived with the fault checkout overheadand checkout time consumption taken into account. Second,a checkout strategy which works better for divisible loadshas been employed to reduce time consumption and checkoutoverhead. Third, an efficient algorithm for fault workload re-distribution has been proposed. Finally, some simulation experi-ments have been conducted. The result shows that the proposedalgorithm is effective. It can minimize the expected executiontime and reduce the time consumed by fault-tolerance.

Index Terms—divisible loads, distributed system, re-allocation, fault tolerance

I. INTRODUCTION

IN recent years, efforts have been made to handle largecomputation problems(e.g. big data) by using distributed

computing systems[1], [2]. In this novel field, researchershave been working to find an optimized algorithm to end theload of massive processors to minimize the span[3]. Divisibleloads are parallel tasks which can be partitioned into fractionsdiscretionarily, all of which can be processed irrelevantly.The Divisible Loads Theory(DLT) has been investigatedin the past decades[4].More literature has focused on theapplication of Divisible Loads Scheduling(DLS) with high-performance computing to heterogeneous and homogeneousdistributed systems[5], [6], [7], [8], [9], [10].Varied schedul-ing algorithms for homogeneous or heterogeneous systemswith different network topologies or conditions have beenderived to minimize the makespan [11], [12]. Heteroge-neous systems with different computation and communica-tion speeds have been used to solve the realistic computationproblems. For heterogeneous star/tree networks, some ex-pressions for optimal processing time were obtained by a va-riety of methods. Meanwhile, some researchers analyzed theeffect of load distribution sequences on the processing time

Manuscript received July 19, 2017; revised October 21, 2017. This work issupported by National Natural Science Foundation of China (No.81102610,81503667 and 81473559)

Wuning Tong is with the Shaanxi University of Chinese Medicine,Xianyang, Shaanxi 712046, China, e-mail: [email protected].

Song Xiao is with the Key Research Laboratory of Radar Armament andUtilization Engineering, Air Force Early Warning Academy, Wuhan 430019,China, e-mail: [email protected].

Hongbin Li is with the Affiliated Hospital of Shaanxi University ofChinese Medicine, Xianyang, Shaanxi 712046, China

of the load. The optimal distribution sequence of the taskscheduling algorithm was obtained in some literature[13],[14]. It is shown that the distribution order depends noton the computation speed of the processors but on thecommunication speed between processors in the distributedsystem. The order of communication speed reduction isthe optimal sequence of load distribution. Shang[12] tookcommunication and computation start-up overheads into ac-count and proposed a more common and practical modelfor heterogeneous distributed systems depending on the non-blocking mode of communications. Meanwhile, it is shownthat the start-up overhead and workload distribution sequencehave an effect on the processing time. For the purposeof fault-tolerance, we take checkout start-up overhead andcheckout time consumption into account in this paper. Inorder to simplify the problem, a closed-form expressionfor optimal processing time is obtained on a homogeneousdistributed system. High performance computing is facing amajor challenge due to its increasing failure rate[15]. Faulttolerance needs to be used to ensure the efficient progressand correct termination of its application when failuresoccur. A large number of fault-tolerant techniques have beendeveloped[16], [17], [18], [19]. Several techniques have beendeveloped with varying levels of granularity. There are twomajor methods: (1)Primary backup (PB), and (2)Checkpoint.Fault-tolerant scheduling is designed on the heterogeneoussystem[18], [20]. Mohammad proposed a dynamic fault tol-erant scheduling method[21], the loads classified into criticaland noncritical ones based on load utilization and the time ittakes the scheduler to allocate resources to the incoming load.Noncritical loads are scheduled on a single processor, andcheckpoint with rollback is applied to them when a failureoccurs. These methods are all designed for independent real-time tasks. In other words, they are not suitable for divisibleloads. There is a large amount of literature focusing on thecheckpoint strategies for divisible loads. The correspondingscheduling is to divide the load into several chunks and docheckpointing after each of the chunks. Daly[22] studiedperiodic checkpoint strategies(chunks of the same size) forexponentially distributed failures and improved his study onthe effect of approximate optimal checkpoint periods. Robertinvestigated the complexity of scheduling computationalloads for exponentially distributed failures in literature[23].If a failure occurs, rollback and recovery are adopted for re-execution to be done from the last checkpoint. Guillaumein[24] aimed to minimize energy consumption when ex-ecuting a divisible workload within a bound in the totalexecution time, and he took a checkpoint at the end of theexecution of each chunk. A large amount of evidence shows

IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09

(Advance online publication: 28 August 2018)

______________________________________________________________________________________

Page 2: Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

that divisible loads scheduling is an efficient approach to highperformance computing in distributed parallel systems. Avariety of scheduling algorithms have been proposed and anoptimal scheduling algorithm has been determined for homo-geneous and heterogeneous distributed systems for divisibleloads applications in the past decades. However, no workhas been done on the divisible loads scheduling algorithmwhen it is needed to take checkout start-up overhead andcheckout time consumption into account. Re-execution on thesame processor is a common strategy for the fault-tolerantscheduling algorithm for divisible loads. However, it is not anoptimal technique for divisible loads’ fault-tolerance, since itwill take a long time to re-execute the fault tasks on the idleprocessor or on a processor whose finish time is early. Inorder to minimize time consumption, we can distribute partsof the tasks to another processor. The major contributions ofthis study are summarized as follows:

1) For the homogeneous system, we have derived aclosed-form expression for optimal processing timewhen checkout start-up overhead and checkout timeconsumption are considered.

2) We employ a checkout strategy that works for divisibleloads. The checkout is not performed until all the loadsare executed.

3) In order to minimize time consumption, we propose anoptimal algorithm with a fault load unit re-allocationstrategy.

The rest of this paper is organized as follows: Section2 presents the mathematical model, derives a closed-formexpression for optimal processing time when checkout start-up overhead and checkout time consumption are considered.A checkout strategy applied to divisible loads is given inSection 3. Section 4 demonstrates the optimal algorithm forfault load unit re-allocation. In Section 5, several numericexperiments and discussions are provided to verify our result.Finally, conclusions are drawn in Section 6.

II. SCHEDULING MODEL

In this paper, the platform considered is a homogeneousdistributed system. Processors are connected in a star/treetopology, where p0 is the master processor, and p ={P1, P2, · · ·, Pm} are worker/slave processors. The masterprocessor divides the load Wtotal into n(n ≤ m) loadfractions, denoted as α1, α2, ···, and αn, and distributes themamong all the n-professors. Therefore, we have

n∑i=1

αi = Wtotal. (1)

where Wtotal is the total workload size. The processorsstart computing their load fractions upon receiving them.The problem is how to determine the optimal sizes of theseload fractions that are distributed to the slave processorsto minimize the makespan. In Table 1, some notations tobe used throughout the paper are introduced. What followsis an essential condition used in related works in the DLTto derive the optimal solution [14]: to obtain an optimalprocessing time, it is necessary and sufficient to require thatall the processors participating in the computation finish theircomputing simultaneously. The time diagram of divisibleloads scheduling on homogeneous distributed systems is

shown in Fig.1. Because the finish times of all the slaveprocessors are equal, Eq.(2) can be obtained using T 0

i =T 0i+1(i = 1, 2, · · ·, n− 1).

TABLE INOTATIONS.

Notations Description

α Fraction of the load assigned to processor.li Processor P0 connected with processor Pi by li.g Time taken to communicate with a unit load.w Time taken to process a unit workload.s A constant additive computation start-up overhead.o Communication start-up overhead.c Checkout start-up overhead.βw The time taken to process a unit load, β < 1.T 0i The finish time of checkout on processor Pi.

T ci The checkout time consumption on processor Pi.

T 1i The time from T 0

i to the fault-tolerant finish time of Pi.

What follows is a primary principle used in earlier s-tudies in DLT to derive an optimal solution [14]: in orderto obtain an optimal processing time, it is necessary andsufficient to require that all the processors participating in thecomputation stop computing at the same time instantly. Thetime diagram of divisible loads scheduling on homogeneousdistributed systems is shown in Fig.1.

o 1g

0T

0P

s1

w c 1w

1P

o 1ig

s 1iw c

1iw

oi

g

s iw c

iw

o1i

g

s 1iw c

1iw

o ng

s nw c

nw

1iP

iP

1iP

nP

Fig. 1. Optimal timing diagram of DLS in a particular sequence.

Because the finish times (checkout finish time) of all pro-cessors are equal, Eq.(2) can be obtained using T 0

i = T 0i+1.

s+ wαi + c+ βwαi = gαi + s+ wαi+1 + c+ βwαi+1

(2)where i = 1, 2, · · ·, n − 1. Using a similar approach inliterature[12], [25], we obtain αi as

αi = µiα1 + λi (3)

where

α1 =

Wtotal −n∑

k=2

λk

1 +n∑

k=2

µk

, (4)

µi =i∏

k=2

(−o

(1 + β)w

), (5)

λi =i∑

k=2

((1 + β)w − g

(1 + β)w

) i∏j=k+1

(−o

(1 + β)w

). (6)

IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09

(Advance online publication: 28 August 2018)

______________________________________________________________________________________

Page 3: Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

Thus, the closed-form expression of the checkout finish timeT 0 is given by Eq.(7)

T 0 = T 01

= o+ s+ c+ (1 + β)wα1

= o+ s+ c+ (1 + β)w

Wtotal −n∑

k=2

λk

1 +n∑

k=2

µk

(7)

III. THE CHECKOUT STRATEGY FOR DIVISIBLE LOADS

In order to detect the tasks carried out incorrectly, astrategy of checkpointing is adopted. As a technique forimproving the reliability and availability of fault-tolerantcomputing systems, it has been an active area of researchin the fault-tolerance aware task scheduling system. It isdesigned mostly for the real-time system[23], [26]. Thereare many related researches, but how to select the inter-val between the checkpointings remains unsolved. When acomputing error occurs in some task interval it will be re-executed from the last checkpointing. If the interval betweentwo checkpointings is bigger, the task re-execution time willbe increased. On the other hand, if it is smaller, the checkoutwill start several times and the checkout overhead will beincreased. Other researches on divisible loads focus mainlyon the failure, which satisfies a certain distribution[23]. Inthis paper, a checkout strategy which works for divisibleloads is employed and it does not depend on the distributionmodel of computing failures.

For divisible loads, tasks are independent of one another.We can check the task when the task execution is finished, asis shown in Fig.1. Therefore, the checkout time consumptionis computed using Eq.(8).

T ci = c+ βwαi. (8)

where T ci is the checkout time consumption on Processor

Pi. It should be noted that we do not consider the distri-bution model of computing failures since divisible loads donot depend on other tasks. To decrease the checkout timeconsumption, the checkout starts only once and the checkoutis applied to the load unit. It does not divide the workloadinto several units. When a computing error occurs in someunits, it will be marked as a fault load unit and re-executedor re-allocated when checkout finishes.

IV. FAULT-TOLERANT TASK UNITS RE-ALLOCATION

A. The necessity for re-allocation

In previous work[23], fault-tolerant scheduling algorithmsfor divisible loads re-executed the tasks incorrectly on theoriginal processor when some failures occurred. The fault-tolerant mechanism we have proposed can re-execute theunits correctly. This indicates that the previous algorithmsneed to be further improved. Assume such a scenario: if aprocessor has several failure task units, it will take a longtime to re-execute the failure load units. Meanwhile, someprocessors have few failure task units and their re-executiontime is shorter. Thus, some processors are idle when theothers are busy in re-executing the failure task units. In thiscase, the total time is bound to increase. The task units canbe re-executed not only on the original processor but also on

0T

0P

c 1w

1P

ci

w

cj

w

cn

w

iP

nP

jP

s

s

s

s

T

Fig. 2. The diagram of fault task units re-execution on original processor.

0T

0P

c 1w

1P

ci

w

cj

w

cn

w

iP

nP

jP

s

s

s

s

T

o 2g

T

Fig. 3. The diagram of fault task units re-allocation.

other processors in order to minimize the total time. To doso, we selected two processors, one having failure task unitsand the maximum re-execution time, and another having theminimum sum of start-up overheads and computing speeds.Then, we re-allocated parts of the failure task units to theprocessor whose sum of start-up overheads and re-executiontime was a minimum.

As is shown in Fig.2, Processor Pi has five fault task unitsand a small computing speed, so it has the longest finish re-execution time of all the processors. It will make executionof all the workloads continue for a long time and increase thetotal time. In this case, suppose the finish time of the systemis T

′. Processor Pj has only one fault task unit and a much

higher computing speed than Processor Pi. It has the shortestre-execution time of all the processors. It is reasonable tore-allocate parts of the fault task units of Processor Pi toProcessor Pj . The master processor can transfer three faulttask units of Processor Pi to Processor Pj . As a result, thefinish time of Processor Pi will be shortened and the system’sfinish time will be decreased. As shown in Fig.3, the finishtime of the system is T

′′. Obviously, T

′′is much smaller

than T′.

IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09

(Advance online publication: 28 August 2018)

______________________________________________________________________________________

Page 4: Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

B. The principle of fault task units re-allocation

From the previous analysis, we know that task units re-allocation can decrease the system’s execution time. Howev-er, there are three problems that need addressing. First, whichprocessor should be selected as the source processor. Second,which processor should be selected as the target processor towhich the fault task units should be re-allocated. The last ishow many fault task units should be re-allocated to the targetprocessor. In this section, these problems will be solved.

1) The source processor selected: The purpose of faulttask units re-allocation is to minimize the time consumptionof the system. The objective is to minimize the makespan,i.e., the processing time of the entire load. Let T denote themakespan, then

T = max1≤i≤n

{T 0 + s+ w ×NF

i

}(9)

Eq.(9) shows that the makespan is the finish time of the pro-cessor which has the maximum processing time. Therefore,if we wish to minimize the makespan, we must minimize themaximum processing time of the processor. The makespan ofthe load can be reduced as long as the maximum processingtime is reduced. According to this principle, the processorwith the maximum processing time is selected as the sourceprocessor. Processor Psour is selected as the source processorwhen sour satisfies Eq.(10) as follows.

sour = arg max1≤i≤n

{T 0 + s+ w ×NF

i

}, (10)

where NFi is the number of fault task units on Processor

Pi(i = 1, 2, · · ·, n), n being the number of the processorsrequired in computation.

2) The target processor selected and the number of taskunits re-allocated: The processor which has the maximumprocessing time among all the processors is selected as thesource processor. Since our research is on the homogeneousdistributed system, the processors have the same start-upoverhead, communication, checkout and computing speed.Therefore, the selection of the target processor does not de-pend on the start-up overhead or the speed of the processors.The processor that has the minimum re-execution time shouldbe selected as the target processor. We determine the targetprocessor according to Eq.(11) as follows and Ptarg is thetarget processor selected.

targ = arg min1≤i≤m

{j × o+ s+ w ×NFi } (11)

where j×o is the sum of the start-up overheads of the jth re-allocation, NF

i is the number of fault task units on ProcessorPi, and m is the number of processors in the distributedsystem.

How to determine the number of fault task units re-allocated to the target processor is another critical issue tobe solved. From Eq.(9), we know that we must minimize themaximum time of the source processor and the finish time ofthe target processor after transferring the fault units from thesource processor to the target processor. The number of faulttask units that should be re-allocated to the target processor

can be obtained by solving Eq.(12).minx

f(x) = min{max{s+ w × (NFsour − x),

j × o+ s+ w × (NFtarg + x)}}

s.t.1 ≤ x ≤ NF

sour

x ∈ Z

(12)

where j × o is the sum of the start-up overheads of the lastbut (j − 1) installment while re-allocation NF

sour and NFtarg

are the number of fault task units on the source processorPsour and target processor Ptarg , respectively.

Theorem 4.1: In the homogeneous distributed system, tominimize the maximum processing time of the source andtarget processor, the number of fault task units x re-allocatedfrom the source processor to the target processor must satisfyx ∈ [η − 1, η + 1] and x ∈ Z, where η =

(NFsour−NF

targ)

2 −j×o2w .

Proof: In order to minimize the makespan of the work-load, we should minimize the maximum processing timeof the source and target processor. Therefore, the sourceand target processor should terminate their re-executionsimultaneously after a re-allocation, and the optimal finishtime is

(w ×

(NF

sour +NFtarg

)+ j × o

)/2 + s. Since the

start-up overhead exists, the finish time is not equal tobut approximates the optimal finish time. What is more,assuming s+w×(NF

sour−x) ≥ j×o+s+w×(NFtarg+x),

Eq(13) is satisfied. That is to say, the finish time of the sourceprocessor is less than the sum of the optimal finish time andthe time to process a task unit.

s+ w × (NFsour − x) ≤ δ + s+ w (13)

j × o+ s+ w × (NFtarg + x) ≥ δ + s− w (14)

where δ =w×(NF

sour+NFtarg)+j×o

2 . The processing time of thetarget processor satisfies Eq.(14). In other words, the finishtime of the target processor is greater than the differencebetween the optimal finish time and the time to process atask unit. According to Eq.(13) and Eq.(14), we have

η − 1 ≤ x ≤ η + 1 (15)

From what has been discussed above, Theorem 4.1 is proved.

From Theorem 4.1, we can re-write Eq.(12) as Eq.(16).The optimal value of the number of fault task units re-allocated can be obtained quickly by solving the optimalmodel shown in Eq.(16).

minx f(x) = min{max{s+ w × (NFsour − x),

j × o+ s+ ω × (NFtarg + x)}}

s.t.η − 1 ≤ x ≤ η + 1x ∈ Z

(16)

Theorem 4.2: T ∗ is the makespan of fault-tolerantscheduling with the re-execution strategy for the formerprocessor. T ∗∗ is the makespan of fault-tolerant schedulingwith the re-allocation strategy. T ∗∗ ≤ T ∗ is obtained.

Proof:1) When the first re-allocation is executed and the number

of fault load units re-allocated x = 0, that means ∀x ̸=

IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09

(Advance online publication: 28 August 2018)

______________________________________________________________________________________

Page 5: Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

0 cannot satisfy In-equation (17). Therefore, there is noneed for re-allocation, and T ∗∗ = T ∗.

max{T 1sour − w × x, T 1

targ + o+ w × x}< T 1

sour

(17)where T 1

i is the time from T 0i to the fault-tolerant finish

time of Pi and i ∈ {sour, targ}.2) When the first re-allocation is executed and the number

of fault load units re-allocated x ̸= 0, that means∃x ̸= 0 satisfies In-equation (17). Therefore T ∗∗ < T ∗.

3) From(2), we know that as long as one installment ofre-allocations is implemented successfully, T ∗∗ < T ∗

is satisfied. Therefore, if j > 1 (j being the numberof successful re-allocations), In-equation (17) can beobtained.

T ∗∗ = T ∗∗j < T ∗∗

j−1 < · · · < T ∗∗1 < T ∗ (18)

where T ∗∗k is the makespan of the kth(1 ≤ k ≤ j)

installment of re-allocations implemented successfully,and j is the number of successful re-allocations. Fromwhat has been discussed above, T ∗∗ < T ∗ is proved.

C. Fault-tolerant scheduling algorithm

From the analysis above, if the fault task units are not re-allocated to other processors, the utilization of the processorswill be decreased and the makespan of the system willbe increased. Since the re-execution time of the sourceprocessor is much longer than that of the target processor,the method of fault task units re-allocation is designed todecrease the makespan and increase the utilization of theprocessors. When the fault task units are re-allocated to thetarget processor, they will be processed on the processor. Thepseudocode of the fault-tolerant scheduling algorithm withtask re-allocation for divisible loads scheduling (FTR DLS)in heterogeneous computing systems is outlined in Algorithm1.

V. EXPERIMENTS AND ANALYSIS

A. Experiments

1) Comparison of Experiments: In this subsection, someexperiments are compared. The experiments were carried outon the personal computer of HP with Intel(R) Core(TM)i7 CPU, 8G RAM and a 64-bit OS. The experimentalparameters of the homogeneous distributed system in oursimulation studies were generated randomly, for which pleaserefer to literature[12]. Literature[12] does not provide theratio of computing speed to checkout speed. Some datawere generated randomly and added. Since the failure rateis an exponential distribution in literature[23], it is also anexponential distribution in the experiments compared.

Literature[24] proposes an algorithm (HOEOCI) for min-imizing energy consumption when a divisible workload isexecuted within a bound in the total execution time. Failuresmay occur in the execution of a load. Re-execution of thefault load units is done only on the former processor, andnot on other processors[24]. Therefore, the makespan isgreater than that when the re-allocation strategy is employed.Literature[23] proposes a method (CSCW) to deal with the

Algorithm 1: Fault Tolerance with Task Re-allocationfor DLS(FTR DLS).Input: o, s, g, w, c, βOutput: Makespan

1 Task scheduling according to the decrease of gi andcomputing T 0 using Eq.(7).

2 Initialization:reallocated flag = 1;j = 1,K =ϕ, sum overheads = 0;

3 Computing max Loc,min Loc and num transferusing Eq.(10), Eq.(11) and Eq.(16)

4 while reallocated flag == 1 do5 current reallocated flag == 1;6 if num transfer == 0 then7 current reallocated flag = 0;8 else9 update the T 1

max Loc and NFmin Loc

10 if min Loc ∈ K then11 sum overheads1 = j × o; flag = 0;

sum overheads = m× o; %m is the position in K.

12 else13 sum overheads = sum overheads+ s;

K(1, j) = min Loc;sum overheads1 = sum overheads;flag = 1, j = j + 1;

14 end15 updating T 1

min Loc and computing max Locusing Eq.(10);

16 Computing min Loc and num transfer bysolving Eq.(11) and Eq.(16);

17 current reallocated flag = 1;18 end19 reallocated flag = current reallocated flag;20 end21 Makespan = max

i{T 0 + T 1

i };

complexity of scheduling computational workflows in thepresence of exponentially distributed failures. When sucha failure occurs, rollback and recovery are used so thatthe execution can resume from the last checkpointing. Thegoal is to minimize the expected execution time(makespan).However, the fault loads will be re-executed on the formerprocessor, and we can see that the makespan is greater thanthat by the re-allocation strategy employed by Theorem 1.For divisible loads, tasks are independent of one another. Wecheck out the task when the task execution is finished, whichalso decreases the checkout time consumption. Therefore,the FTR DLS algorithm has more advantages over the otheralgorithms in decreasing execution time. Figs. 4(a) to (f)show the makespan of several different workloads.

To evaluate the stability of the proposed algorithm andthe compared algorithms, we give the statistical results(Mean and Variance) in the experiments with the differentexperimental scenes. Table II shows the mean and varianceresults of the makespan with different scenes. In the sta-tistical results, the workloads are set as Wtotal = χ × ν,and χ = 10000, 20000, · · · , 60000; ν = 2, 4, · · · , 10. Fromthe statistical results, we can see that proposed algorithm(BiHMA) is better than the compared algorithms. Not only

IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09

(Advance online publication: 28 August 2018)

______________________________________________________________________________________

Page 6: Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

2 4 6 8 10

5.2

5.4

5.6

5.8

6.0

log(Makespan)

Workload Size (*10000)

FTR_DLS

CLCW

HOEOCI

HOEOCI

CLCW

FTR_DLS

(a)

2 4 6 8 10

5.6

5.8

6.0

6.2

6.4

log(Makespan)

Workload Size (*20000)

FTR_DLS

CLCW

HOEOCI

HOEOCI

CLCW

FTR_DLS

(b)

2 4 6 8 10

6.0

6.2

6.4

6.6

6.8

log(Makespan)

Workload Size (*30000)

FTR_DLS

CLCW

HOEOCI

HOEOCI

CLCW

FTR_DLS

(c)

2 4 6 8 10

6.5

6.6

6.7

6.8

6.9

7.0

7.1

7.2

7.3

7.4

log(Makespan)

Workload Size (*40000)

FTR_DLS

CLCW

HOEOCI

HOEOCI

CLCW

FTR_DLS

(d)

2 4 6 8 10

7.2

7.4

7.6

7.8

8.0

log(Makespan)

Workload Size (*50000)

FTR_DLS

CLCW

HOEOCI

HOEOCI

CLCW

FTR_DLS

(e)

2 4 6 8 10

8.0

8.2

8.4

8.6

8.8

log(Makespan)

Workload Size (*60000)

FTR_DLS

CLCW

HOEOCI

HOEOCI

CLCW

FTR_DLS

(f)

Fig. 4. The makespan of FTR DLS, CSCW and HOEOCI.

the statistical results of mean but also the statistical results ofvariance are smaller than the compared algorithms. In addi-tion, the variance are increased with the workload increased.

TABLE IISTATISTICAL RESULTS (MEAN AND VARIANCE) OF THE MAKESPAN.

χ ν FTR DLS CLCW HOEOCI

10000

2 5.2304 (2.58E-2) 5.3222 (3.13E-2) 5.3617 (3.24E-2)4 5.4771 (2.98E-2) 5.6232 (3.45E-2) 5.6128 (3.64E-2)6 5.6232 (3.37E-2) 5.7853 (3.95E-2) 5.8325 (4.02E-2)8 5.7482 (3.92E-2) 5.9138 (4.31E-2) 5.9494 (4.68E-2)

10 5.8062 (4.36E-2) 6.0414 (4.81E-2) 6.0086 (4.79E-2)

20000

2 5.5788 (4.67E-2) 5.6610 (5.24E-2) 5.7051 (5.19E-2)4 5.8357 (4.68E-2) 5.9515 (5.34E-2) 5.9818 (5.42E-2)6 5.9697 (4.85E-2) 6.1438 (5.47E-2) 6.1919 (5.64E-2)8 6.1167 (4.99E-2) 6.2874 (5.85E-2) 6.3008 (5.79E-2)

10 6.1702 (5.12E-2) 6.4086 (6.07E-2) 6.3572 (6.13E-2)

30000

2 6.0054 (5.58E-2) 6.0895 (6.48E-2) 6.1274 (6.34E-2)4 6.2512 (5.84E-2) 6.3779 (6.59E-2) 6.4031 (5.67E-2)6 6.3893 (5.93E-2) 6.5640 (6.79E-2) 6.6195 (6.81E-2)8 6.5325 (6.07E-2) 6.7179 (6.90E-2) 6.7289 (6.93E-2)

10 6.5868 (6.37E-2) 6.8241 (7.09E-2) 6.8353 (7.15E-2)

40000

2 6.5430 (6.59E-2) 6.6244 (7.31E-2) 6.6651 (7.29E-2)4 6.7883 (6.71E-2) 6.9179 (7.54E-2) 6.9467 (7.66E-2)6 6.9289 (6.89E-2) 7.1037 (7.84E-2) 7.0853 (7.78E-2)8 7.0729 (7.06E-2) 7.2514 (8.14E-2) 7.2677 (8.07E-2)

10 7.1277 (7.37E-2) 7.3571 (8.54E-2) 7.3696 (8.60E-2)

50000

2 7.1939 (7.60E-2) 7.2773 (8.91E-2) 7.3168 (8.86E-2)4 7.4343 (7.89E-2) 7.5668 (9.16E-2) 7.5627 (9.08E-2)6 7.5774 (8.14E-2) 7.7486 (9.42E-2) 7.7367 (9.39E-2)8 7.7232 (8.37E-2) 7.8964 (9.86E-2) 7.9136 (9.79E-2)

10 7.7799 (8.96E-2) 8.0031 (1.09E-1) 7.9622 (1.08E-1)

60000

2 7.9128 (9.45E-2) 7.9962 (1.22E-1) 7.9835 (1.19E-1)4 8.1520 (9.86E-2) 8.2897 (1.38E-1) 8.2149 (1.33E-1)6 8.2955 (1.02E-2) 8.4694 (1.45E-2) 8.5290 (1.50E-2)8 8.4443 (1.09E-1) 8.6170 (1.59E-1) 8.6328 (1.62E-1)

10 8.4999 (1.23E-1) 8.7267 (1.67E-1) 8.7329 (1.70E-1)

2) Performance evaluation: In this subsection, we presentseveral groups of experimental results obtained from exten-sive simulations to evaluate the performance of FTR DLS.The parameters of the homogeneous distributed systemgiven were generated randomly, for which please refer toliterature[12]. To study the influence of the failure rateon Performance Improvement Ratio (PIR), several groupsof experiments with different probabilities of failure wereconducted. In this paper, the failure rate in every group ofexperiments was generated randomly among 0.5%-1%, 1%-2%, 2%-3%, 3%-4%, and 4%-5%, respectively.

To show the advantage of fault task units re-allocation, adefinition of PIR is used. PIR is computed using Eq.(19)as follows

PIR =T c0 − T c

1

T c0

. (19)

where T c0 is the fault-tolerant time from T 0 to T

′in Fig.3

without the use of the re-allocation strategy, T c1 is fault-

tolerant time from T 0 to T′′

in Fig.3 with the re-allocationstrategy employed.

Figs.5(a), (b), (c) and (d) show the statistical results ofPIR when the workload size ranges from 104 to 108, and thefailure rate was generated randomly in 1%-2%. Some repre-sentative workload sizes were simulated and every workloadsize was re-executed 1000 times. Fig.6 shows the variationof the mean of PIR when the workload size ranges from104 to 108 with different probabilities of failure.

B. Experiment analysis

PIR increases monotonically because the number of faultload units is approximately equal to the expected numberand the condition of re-allocation is easy to satisfy due tothe increase of the workload size. Therefore, the variation ofPIR is stable and increases slowly as shown in Figs.5(a), (b),

IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09

(Advance online publication: 28 August 2018)

______________________________________________________________________________________

Page 7: Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

1 2 3 4 5 6 7 8 9 10

0.0

0.1

0.2

0.3

0.4

0.5

Workload Size (*10000)

PIR

(a)

5 10 15 20 25 30 35 40 45 500.15

0.20

0.25

0.30

0.35

0.40

0.45

0.50

0.55

Workload Size (*10000)

PIR

(b)

0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0

0.34

0.36

0.38

0.40

0.42

0.44

0.46

0.48

0.50

Workload Size (*10000+500000)

PIR

(c)

1 2 3 4 5 6 7 8 9 10

0.38

0.40

0.42

0.44

0.46

0.48

Workload Size (*100000+1000000)

PIR

(d)

Fig. 5. The variation of PIR with the workload size.

0 10 20 30 40 50 60 70 80 90 100

0.34

0.36

0.38

0.40

0.42

0.44

0.46

1%-2%

PIR

Workload Size (*100000)

0.5%-1%

1%-2%

2%-3%

3%-4%

4%-5%

0.5%-1%

2%-3%

3%-4%

4%-5%

Fig. 6. The variation of PIR with the workload size ranges.

(c) and (d). Fig.6 shows the variation of the mean of PIRwith the workload size and the failure rate. We can see thatthe mean of PIR reaches 44% when the load size is largeenough. That is to say, fault-tolerant scheduling with the re-allocation strategy can save 44% of the time consumed byfault tolerance, compared with re-execution on the originalprocessor without re-allocation. When the workload size islarge enough, we can re-write Eq.(19) as Eq.(20).

PIR =

max1≤i≤n

{pαi} −(pα+

n∑i=1

(c+ s)

)max1≤i≤n

{pαi}(20)

where α = Wtotal/n. When the workload size is largeenough, θ → 0, where

θ =

n∑i=1

(c+ s)

max1≤i≤n

{pαi}, (21)

then, Eq.(22) can be obtained.

PIR ≈max1≤i≤n

{pαi} − pα

max1≤i≤n

{pαi}

=pαmax − pα

pαmax

= 1− wtotal

nαmax= 1− wtotal

nα1

= 1−wtotal (1 +

∑nk=2 µk)

n (wtotal −∑n

k=2 λk)

(22)

From Eq.(22), we know that the PIR does not depend onthe failure rate. The PIR reaches the same value and is closeto a constant as shown in Fig.(6) when the workload size islarge enough.

VI. CONCLUSION

This paper aims to find an optimal fault-tolerant schedul-ing method for divisible loads in heterogeneous distributedsystems. We have successfully achieved the aim by designinga scheduling algorithm with a fault task units re-allocationstrategy. First, we derived a closed-form expression for theoptimal processing time and optimal scheduling sequence.Second, we employed a checkout method which works fordivisible loads. Finally, we proposed a novel fault-tolerantscheduling algorithm with a fault task units re-allocation

IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09

(Advance online publication: 28 August 2018)

______________________________________________________________________________________

Page 8: Fault-Tolerant Scheduling Algorithm with Re-allocation for ... · scheduling algorithm was obtained in some literature[13], [14]. It is shown that the distribution order depends not

strategy. In order to examine the performance of the proposedalgorithm, we conducted a set of experiments. From theexperimental results, we can see that fault-tolerant schedulingwith the re-allocation strategy can save some time consumedby fault tolerance, as compared with re-execution on theoriginal processor without re-allocation.

ACKNOWLEDGMENT

This work was supported by National Natural Sci-ence Foundation of China (No.81102610, 81503667 and81473559).

REFERENCES

[1] G. Sanchez, E. Leal, and N. Leal, “A linear programming approachfor 3d point cloud simplification,” IAENG International Journal ofComputer Science, vol. 44, no. 1, pp. 60–67, 2017.

[2] M. Kolar, M. Benes, D. Sevcovic, and J. Kratochvil, “Mathematicalmodel and computational studies of discrete dislocation dynamics,”IAENG International Journal of Applied Mathematics, vol. 45, no. 3,pp. 198–207, 2015.

[3] A. Shokripour, M. Othman, H. Ibrahim, and S. Subramaniam, “Newmethod for scheduling heterogeneous multi-installment systems,” Fu-ture Generation Computer Systems, vol. 28, no. 8, pp. 1205 – 1216,2012.

[4] T. G. Robertazzi, “Ten reasons to use divisible load theory,” Computer,vol. 36, no. 5, pp. 63–68, May 2003.

[5] Z. Zhang and T. G. Robertazzi, “Scheduling divisible loads in gaus-sian, mesh and torus network of processors,” IEEE Transactions onComputers, vol. 64, no. 11, pp. 3249–3264, 2015.

[6] K. Wang and T. G. Robertazzi, “Scheduling divisible loads withnonlinear communication time,” IEEE Transactions on Aerospace &Electronic Systems, vol. 51, no. 3, pp. 2479–2485, 2015.

[7] C. Y. Chen and C. P. Chu, “A novel computational model for non-lineardivisible loads on a linear network,” IEEE Transactions on Computers,vol. 65, no. 1, pp. 53–65, 2016.

[8] S. Vadde and S. Ganesan, “Effect of fault in single load distributionwith fifo(first in, first out) back propagation of results,” in IEEEInternational Conference on Electro Information Technology, 2016,pp. 0804–0810.

[9] L. Dai, Z. Shen, T. Chen, and Y. Chang, “Analysis and modeling oftask scheduling in wireless sensor network based on divisible loadtheory,” International Journal of Communication Systems, vol. 27,no. 5, pp. 721–731, 2014.

[10] O. Beaumont, L. Eyraud-Dubois, H. Rejeb, and C. Thraves, “Hetero-geneous resource allocation under degree constraints,” IEEE Transac-tions on Parallel & Distributed Systems, vol. 24, no. 5, pp. 926–937,2013.

[11] H. J. Kim, “A novel optimal load distribution algorithm for divisibleloads,” Cluster Computing, vol. 6, no. 1, pp. 41–46, 2003.

[12] Mingsheng and Shang, “Optimal algorithm for scheduling large di-visible workload on heterogeneous system,” Applied MathematicalModelling, vol. 32, no. 9, pp. 1682–1695, 2008.

[13] V. Bharadwaj, D. Ghose, and V. Mani, “Optimal sequencing andarrangement in distributed single-level tree networks with communi-cation delays,” IEEE Transactions on Parallel & Distributed Systems,vol. 5, no. 9, pp. 968–976, 1994.

[14] H. J. Kim and V. Mani, “Divisible load scheduling in single-level treenetworks: Optimal sequencing and arrangement in the nonblockingmode of communication,” Computers & Mathematics with Applica-tions, vol. 46, no. 10, pp. 1611–1623, 2003.

[15] J. Dongarra, P. Beckman, P. Aerts, F. Cappello, T. Lippert, S. Mat-suoka, P. Messina, T. Moore, R. Stevens, and A. Trefethen, “Theinternational exascale software project: a call to cooperative actionby the global high-performance community,” International Journal ofHigh Performance Computing Applications, vol. 23, no. 4, pp. 309–322, 2009.

[16] X. Zhu, X. Qin, and M. Qiu, “Qos-aware fault-tolerant schedulingfor real-time tasks on heterogeneous clusters,” IEEE Transactions onComputers, vol. 60, no. 6, pp. 800–812, 2011.

[17] B. Javadi, P. Thulasiraman, and R. Buyya, “Enhancing performanceof failure-prone clusters by adaptive provisioning of cloud resources,”The Journal of Supercomputing, vol. 63, no. 2, pp. 467–489, Feb 2013.

[18] J. Balasangameshwara and N. Raju, “Performance-driven load bal-ancing with a primary-backup approach for computational grids withlow communication cost and replication cost,” IEEE Transactions onComputers, vol. 62, no. 5, pp. 990–1003, 2013.

[19] B. Nazir, K. Qureshi, and P. Manuel, “Replication based fault tolerantjob scheduling strategy for economy driven grid,” Journal of Super-computing, vol. 62, no. 2, pp. 855–873, 2012.

[20] W. Sun, C. Yu, X. Dfago, and Y. Inoguchi, “Dynamic scheduling real-time task using primary-backup overloading strategy for multiproces-sor systems,” Ieice Transactions on Information & Systems, vol. 91-D,no. 3, pp. 796–806, 2008.

[21] M. H. Mottaghi and H. R. Zarandi, “Dfts: A dynamic fault-tolerantscheduling for real-time tasks in multicore processors,” Microproces-sors & Microsystems, vol. 38, no. 1, pp. 88–97, 2014.

[22] J. Daly, “A higher order estimate of the optimum checkpoint intervalfor restart dumps,” Future Generation Computer Systems, vol. 22,no. 3, pp. 303 – 312, 2006.

[23] Y. Robert, F. Vivien, and D. Zaidouni, “On the complexity of schedul-ing checkpoints for computational workflows,” in Ieee/ifip Internation-al Conference on Dependable Systems and Networks Workshops, 2012,pp. 1–6.

[24] G. Aupy, A. Benoit, R. Melhem, and P. Renaud-Goud, “Energy-awarecheckpointing of divisible tasks with soft or hard deadlines,” in GreenComputing Conference, 2013, pp. 1–8.

[25] M. Wang, X. Wang, K. Meng, and Y. Wang, “New model and geneticalgorithm for divisible load scheduling in heterogeneous distributedsystems,” International Journal of Pattern Recognition & ArtificialIntelligence, vol. 27, no. 07, pp. 1 359 005–, 2013.

[26] J. M. Yang, “Probabilistic optimisation of checkpoint intervals for real-time multi-tasks,” International Journal of Systems Science, vol. 44,no. 4, pp. 595–603, 2013.

IAENG International Journal of Computer Science, 45:3, IJCS_45_3_09

(Advance online publication: 28 August 2018)

______________________________________________________________________________________