• 沒有找到結果。

Analysis: If there are m jobs to be scheduled in n machines, the time complexity of QoS guided

scheduling algorithm is O(m2

n).

Figure 3 shows an example demonstrating the Min-Min and QoS Min-Min scheduling schemes. The asterisk * means that tasks/machines with QoS demand/ability, and the X means that QoS tasks couldn’t be executed on that machine. Obviously, the QoS guided scheduling algorithm gets the better performance than the Min-Min algorithm in term of makespan. Nevertheless, the QoS guided model is not optimal in both makespan and resource cost. We will describe the rescheduling optimization in next section.

Algorithm_QOS-Min-Min() {

for all tasks ti in meta-task Mv (in an arbitrary order) for all hosts mj (in a fixed arbitrary order) CTij = etij + dtj

end for end for

do until all tasks with QoS request in Mv are mapped for each task with high QoS in Mv,

find a host in the QoS qualified host set that obtains the earliest completion time

end for

find task tk with the minimum earliest completion time assign task tk to host ml that gives the earliest completion time

delete task tk from Mv update dtl

update CTil for all i end do

do until all tasks with non-QoS request in Mv are mapped for each task in Mv

find the earliest completion time and the corresponding host

end for

find the task tk with the minimum earliest completion time assign task tk to host ml that gives the earliest completion time

delete task tk from Mv update dtl

update CTil for all i end do

} End_of_ QOS-Min-Min

Figure 2. The QoS Guided Algorithm

4. Rescheduling Optimization

Grid scheduling works as the mapping of individual tasks to computer resources, with respecting service level agreements (SLAs) [2]. In order to achieve the optimized performance, how to mapping heterogeneous

tasks to the best fit resource is an important factor. The Min-Min algorithm and the QoS guided method aims at scheduling jobs to achieve better makespan. However, there are still having rooms to make improvements. In this section, we present two optimization schemes based on the QoS guided Min-Min approach.

*M1 M2 T1 7 4 T2 3 3 T3 9 5

*T4 5 X

Machine Makespan

A. The Min-Min algorithm B. The QOS guided scheduling algorithm M3

7 5 7 X T5 9 8 6

*T6 5 X X

Machine

0 M1 M2

*T4

*T6 T1 3

8 12

M3 T3

T5 Makespan

T2 0

M1 M2

T2

*T4

*T6

3 T1 8 13

M3 T3

T5

Figure 3. Min-Min and QoS Guided Min-Min

4.1

Makespan Optimization Rescheduling (MOR) The first one is Makespan Optimization Rescheduling (MOR), which focuses on improving the makespan to achieve better performance than the QoS guided scheduling algorithm. Assume the makespan achieved by the QoS guided approach in different machines are CT1, CT2, …, CTm, with CTk = max { CT1, CT2, …, CTm }, where m is the number of machines and 1 ≤ k ≤ m. By subtracting CTk – CTi, where 1 ≤ i ≤ m and i ≠ k, we can have m-1 available time fragments. According to the size of these available time fragments and the size of tasks in machine Mk, the MOR dispatches suitable tasks from machine Mk to any other machine that has available and large enough time fragments. Such optimization is repeated until there is no task can be moved.

30

12

*M1 M2 T1 7 4 T2 3 3 T3 9 5

*T4 5 X

B. The Makespan Optimization Rescheduling (MOR) algorithm

M3 7 5 7 X T5 9 8 6

*T6 5 X X

Machine 0

*M1 M2

*T4

*T6

T1 3

8 11

M3 T3

T5 Makespan

T2

Machine T1

T2 T3

M2 T5

M3 A. The QOS guided scheduling algorithm

*T6

*T4

*M1 Makespan

12

8

3

Figure 4. Example of MOR

Recall the example given in Figure 3, Figure 4 shows the optimization of the MOR approach. The left side of Figure 4

demonstrates that the QoS guided scheme gives a schedule with makespan = 12, wheremachine M2 presents maximum CT (completion time), which is assembled by tasks T2, T1 and T3.

Since the CT of machine ‘M3’ is 6, so ‘M3’ has an available time fragment (6). Checking all tasks in machine M2, only T2 is small enough to be allocated in the available time fragment in M3. Therefore, task M2 is moved to M3, resulting machine ‘M3’ has completion time

CT=11, which is better than the QoS guided

scheme.

As mentioned above, the MOR is based on the QoS guided scheduling algorithm. If there are m tasks to be scheduled in n machines, the time complexity of MOR is O(m2n). Figure 5 outlines a pseudo of the MOR scheme.

Algorithm_MOR() {

for CTj in all machines

find out the machine with maximum makespan CTmax and set it to be the standard

end for

do until no job can be rescheduled

for job i in the found machine with CTmax for all machine j

according to the job’s QOS demand, find the adaptive machine j

if (the execute time of job i in machine j + the CTj < makespan)

rescheduling the job i to machine j update the CTj and CTmax

exit for end if next for

if the job i can be reschedule

find out the new machine with maximum CTmax

exit for end if next for end do } End_of_ MOR

Figure 5. The MOR Algorithm

4.2 Resource Optimization Rescheduling (ROR)

Following the assumptions described in MOR, the main idea of the ROR scheme is to re-dispatch tasks from the machine with minimum number of tasks to other machines, expecting a decrease of resource need.

Consequently, if we can dispatch all tasks from machine Mx to other machines, the total amount of resource need will be decreased.

Figure 6 gives another example of QoS scheduling, where the QoS guided scheduling presents makespan = 13.

According to the clarification of ROR, machine ‘M1’ has the fewest amount of tasks. We can dispatch the task

‘T4’ to machine ‘M3’ with the following constraint

CTij + CTj <= CTmax (2)

The above constraint means that the rescheduling can be performed only if the movement of tasks does not increase the overall makespan. In this example, CT43 = 2, CT3=7 and CTmax=CT2=13. Because the makespan of M3 (CT3) will be increased from 7 to 9, which is smaller than the CTmax, therefore, the task migration can be performed. As the only task in M1 is moved to M3, the amount of resource need is also decreased comparing with the QoS guided scheduling.

31

M1 *M2

T1 3 4

T2 6 6

*T3 X 7

T4 4 6

B. The Resource Optimization Rescheduling (ROR) Algorithm

M3 2 3 X 2

T5 5 7 2

*T6 X 6 X

Machine 0

M1 *M2

*T6

T1 4

8 13

M3

*T3

T5 T2 Makespan

Machine T4

M1

A. The QOS guided scheduling

0 *M2

T4

*T6

T1 4

8 13

M3

*T3

T5 T2 Makespan

Figure 6. Example of ROR

The ROR is an optimization scheme which aims to minimize resource cost. If there are m tasks to be scheduled in n machines, the time complexity of ROR is also O(m2n). Figure 7 depicts a high level description of the ROR optimization scheme.

Algorithm_MOR() {

for m in all machines

find out the machine m with minimum count of jobs end for

do until no job can be rescheduled

for job i in the found machine with minimum count of jobs for all machine j

according to the job’s QOS demand, find the adaptive machine j

if (the execute time of job i in machine j + the CTj <= makespan CTmax)

rescheduling the job i to machine j update the CTj

update the count of jobs in machine m and machine j

exit for end if next for

next for end do } End_of_ MOR

Figure 7. The ROR Algorithm 5. Performance Evaluation

5.1 Parameters and Metrics

To evaluate the performance of the proposed techniques, we have implemented the Min-Min scheduling algorithm and the QoS guided Min-Min scheme. The experiment model consists of heterogeneous machines and tasks. Both of the Machines and tasks are classified into QoS type and non-QoS type. Table 1 summarizes six parameters and two comparison metrics used in the experiments. The number of tasks is ranged from 200 to 600. The number of machines is ranged from 50 to 130. The percentage of QoS machines and tasks are set between 15% and 75%. Heterogeneity of tasks are defined as Ht (for non-QoS task) and HQ (for QoS task), which is used in generating random tasks. For example, the execution time of a non-QoS task is randomly generated from the interval [10, Ht×102] and execution time of a QoS task is randomly generated from the interval [102, HQ×103] to reflect the real application world.

All of the parameters used in the experiments are generated randomly with a uniform distribution. The results demonstrated in this section are the average values of running 100 random test samples.

Table 1: Parameters and Comparison Metrics

Task number (NT) {200, 300, 400, 500, 600}

Resource number (NR) {50, 70, 90, 110, 130}

Percentage of QOS resources (QR %) {15%, 30%, 45%, 60%, 75%}

Percentage of QOS tasks (QT %) {15%, 30%, 45%, 60%, 75%}

Heterogeneity of non-QOS tasks (HT) {1, 3, 5, 7, 9}

Heterogeneity of QOS tasks (HQ) {3, 5, 7, 9, 11}

Makespan The completion time of a set of

tasks

Resource Used (RU) Number of machines used for executing a set of tasks

5.2 Experimental Results of MOR

Table 2 compares the performance of the MOR, Min-Min algorithm and the QoS guided Min-Min scheme in term of makespan. There are six tests that are conducted with different parameters. In each test, the configurations are outlined beside the table caption from (a) to (f). Table (a) changes the number of tasks to analyze the performance results. Increasing the number of tasks, improvement of MOR is limited. An average improvement ratio is from 6% to 14%. Table (b) changes the number of machines.

It is obvious that the MOR has significant improvement in larger grid systems, i.e., large amount of machines. The average improvement rate is 7% to 15%. Table (c) discusses the influence of changing percentages of QoS machines. Intuitionally, the MOR performs best with 45% QoS machines. However, this observation is not always true. By analyzing the four best ones in (a) to (d), we observe that the four tests (a) NT=200 (NR=50, QR=30%, QT=20%) (b) NR=130 (NT=500, QR=30%, QT=20%) (c)

32 QR=45% (NT=300, NR=50, QT=20%) and (d) QT=15%

(NT=300, NR=50, QR=40%) have best improvements. All of the four configurations conform to the following relation,

0.4 × (NT × QT) = NR × QR (3) This observation indicates that the improvement of MOR is significant when the number of QoS tasks is 2.5 times to the number of QoS machines. Tables (e) and (f) change heterogeneity of tasks. We observed that heterogeneity of tasks is not critical to the improvement rate of the MOR technique, which achieves 7%

improvements under different heterogeneity of tasks.

Table 2: Comparison of Makespan

(a) (NR=50, QR=30%, QT=20%, HT=1, HQ=1)

Task Number (NT) 200 300 400 500 600

Min-Min 978.2 1299.7 1631.8 1954.6 2287.8 QOS Guided Min-Min 694.6 917.8 1119.4 1359.9 1560.1 MOR 597.3 815.5 1017.7 1254.8 1458.3 Improved Ratio 14.01% 11.15% 9.08% 7.73% 6.53%

(b) (NT=500, QR=30%, QT=20%, HT=1, HQ=1)

Resource Number (NR) 50 70 90 110 130

Min-Min 1931.5 1432.2 1102.1 985.3 874.2 QOS Guided Min-Min 1355.7 938.6 724.4 590.6 508.7

MOR 1252.6 840.8 633.7 506.2 429.4 Improved Ratio 7.60% 10.42% 12.52% 14.30% 15.58%

(c) (NT=300, NR=50, QT=20%, HT=1, HQ=1)

QR% 15% 30% 45% 60% 75%

Min-Min 2470.8 1319.4 888.2 777.6 650.1 QOS Guided Min-Min 1875.9 913.6 596.1 463.8 376.4

MOR 1767.3 810.4 503.5 394.3 339.0 Improved Ratio 5.79% 11.30% 15.54% 14.99% 9.94%

(d) (NT=300, NR=50, QR=40%, HT=1, HQ=1)

QT% 15% 30% 45% 60% 75%

Min-Min 879.9 1380.2 1801.8 2217.0 2610.1 QOS Guided Min-Min 558.4 915.9 1245.2 1580.3 1900.6 MOR 474.2 817.1 1145.1 1478.5 1800.1 Improved Ratio 15.07% 10.79% 8.04% 6.44% 5.29%

(e) (NT=500, NR=50, QR=30%, QT=20%, HQ=1)

HT 1 3 5 7 9

Min-Min 1891.9 1945.1 1944.6 1926.1 1940.1 QOS Guided Min-Min 1356.0 1346.4 1346.4 1354.9 1357.3 MOR 1251.7 1241.4 1244.3 1252.0 1254.2 Improved Ratio 7.69% 7.80% 7.58% 7.59% 7.59%

(f) (NT=500, NR=50, QR=30%, QT=20%, HT=1)

HQ 3 5 7 9 11

Min-Min 1392.4 1553.9 1724.9 1871.7 2037.8 QOS Guided Min-Min 867.5 1007.8 1148.2 1273.2 1423.1 MOR 822.4 936.2 1056.7 1174.3 1316.7 Improved Ratio 5.20% 7.11% 7.97% 7.77% 7.48%

5.3 Experimental Results of ROR

Table 3 analyzes the effectiveness of the ROR technique under different circumstances.

Table 3: Comparison of Resource Used

(a) (NR=100, QR=30%, QT=20%, HT=1, HQ=1)

Task Number (NT) 200 300 400 500 600

QOS Guided Min-Min 100 100 100 100 100 ROR 39.81 44.18 46.97 49.59 51.17 Improved Ratio 60.19% 55.82% 53.03% 50.41% 48.83%

(b) (NT=500, QR=30%, QT=20%, HT=1, HQ=1)

Resource Number (NR) 50 70 90 110 130

QOS Guided Min-Min 50 70 90 110 130 ROR 26.04 35.21 43.65 50.79 58.15 Improved Ratio 47.92% 49.70% 51.50% 53.83% 55.27%

(c) (NT=500, NR=50, QT=20%, HT=1, HQ=1)

QR% 15% 30% 45% 60% 75%

QOS Guided Min-Min 50 50 50 50 50 ROR 14.61 25.94 35.12 40.18 46.5 Improved Ratio 70.78% 48.12% 29.76% 19.64% 7.00%

(d) (NT=500, NR=100, QR=40%, HT=1, HQ=1)

QT% 15% 30% 45% 60% 75%

QOS Guided Min-Min 100 100 100 100 100

ROR 57.74 52.9 48.54 44.71 41.49 Improved Ratio 42.26% 47.10% 51.46% 55.29% 58.51%

(e) (NT=500, NR=100, QR=30%, QT=20%, HQ=1)

HT 1 3 5 7 9

QOS Guided Min-Min 100 100 100 100 100 ROR 47.86 47.51 47.62 47.61 47.28 Improved Ratio 52.14% 52.49% 52.38% 52.39% 52.72%

(f) (NT=500, NR=100, QR=30%, QT=20%, HT=1)

HQ 3 5 7 9 11

QOS Guided Min-Min 100 100 100 100 100 ROR 54.61 52.01 50.64 48.18 46.53 Improved Ratio 45.39% 47.99% 49.36% 51.82% 53.47%

33 Similar to those of Table 2, Table (a) changes the number of tasks to verify the reduction of resource that needs to be achieved by the ROR technique. We noticed that the ROR has significant improvement in minimizing grid resources. Comparing with the QoS guided Min-Min scheduling algorithm, the ROR achieves 50% ~ 60% improvements without increasing overall makespan of a chunk of grid tasks. Table (b) changes the number of machines. The ROR retains 50% improvement ratio.

Table (c) adjusts percentages of QoS machine. Because this test has 20% QoS tasks, the ROR performs best at 15% QoS machines. This observation implies that the ROR has significant improvement when QoS tasks and QoS machines are with the same percentage. Table (d) sets 40% QoS machine and changes the percentages of QoS tasks. Following the above analysis, the ROR technique achieves more than 50% improvements when QoS tasks are with 45%, 60% and 75%. Tables (e) and (f) change the heterogeneity of tasks. Similar to the results of section 5.2, the heterogeneity of tasks is not critical to the improvement rate of the ROR technique.

Overall speaking, the ROR technique presents 50%

improvements in minimizing total resource need compare with the QoS guided Min-Min scheduling algorithm.

6. Conclusions

In this paper we have presented two optimization schemes aiming to reduce the overall completion time (makespan) of a chunk of grid tasks and minimize the total resource cost. The proposed techniques are based on the QoS guided Min-Min scheduling algorithm. The optimization achieved by this work is twofold; firstly, without increasing resource costs, the overall task execution time could be reduced by the MOR scheme with 7%~15% improvements. Second, without increasing task completion time, the overall resource cost could be reduced by the ROR scheme with 50% reduction on average, which is a significant improvement to the state of the art scheduling technique. The proposed MOR and ROR techniques have characteristics of low complexity, high effectiveness in large-scale grid systems with QoS services.

References

[1] A. Abraham, R. Buyya, and B. Nath, "Nature’s Heuristics for Scheduling Jobs on Computational Grids", Proc. 8th IEEE International Conference on Advanced Computing and Communications (ADCOM-2000), pp.45-52, 2000.

[2] A. Andrieux, D. Berry, J. Garibaldi, S. Jarvis, J. MacLaren, D.

Ouelhadj, D. Snelling, "Open Issues in Grid Scheduling", National e-Science Centre and the Inter-disciplinary Scheduling Network Technical Paper, UKeS-2004-03.

[3] R. Buyya, D. Abramson, Jonathan Giddy, Heinz Stockinger,

“Economic Models for Resource Management and Scheduling in Grid Computing”, Journal of Concurrency: Practice and Experience, vol. 14, pp. 13-15, 2002.

[4] Jesper Andersson, Morgan Ericsson, Welf Löwe, and Wolf Zimmermann, "Lookahead Scheduling for Reconfigurable GRID Systems", 10th International Europar'04: Parallel Processing, vol. 3149, pp. 263-270, 2004.

[5] D Yu, Th G Robertazzi, "Divisible Load Scheduling for Grid Computing", 15th IASTED Int’l. Conference on Parallel and Distributed Computing and Systems, Vol. 1, pp. 1-6, 2003 [6] Fangpeng Dong and Selim G. Akl, "Scheduling Algorithms for

Grid Computing: State of the Art and Open Problems", Technical Report No. 2006-504, 2006.

[7] Ligang He, Stephen A. Jarvis, Daniel P. Spooner, Xinuo Chen, Graham R. Nudd, "Hybrid Performance-oriented Scheduling of Moldable Jobs with QoS Demands in Multiclusters and Grids", Grid and Cooperative Computing (GCC 2004), vol. 3251, pp.

217–224, 2004.

[8] Xiaoshan He, Xian-He Sun, Gregor Von Laszewski, "A QoS Guided Scheduling Algorithm for Grid Computing", Journal of Computer Science and Technology, vol.18, pp.442-451, 2003.

[9] Jang-uk In, Paul Avery, Richard Cavanaugh, Sanjay Ranka,

"Policy Based Scheduling for Simple Quality of Service in Grid Computing", IPDPS 2004, pp. 23, 2004.

[10] J. Schopf. "Ten Actions when Superscheduling: A Grid Scheduling Architecture", Scheduling Architecture Workshop, 7th Global Grid Forum, 2003.

[11] Junsu Kim, Sung Ho Moon, and Dan Keun Sung, "Multi-QoS Scheduling Algorithm for Class Fairness in High Speed Downlink Packet Access", Proceedings of IEEE Personal, Indoor and Mobile Radio Communications Conference (PIMRC 2005), vol. 3, pp. 1813-1817, 2005

[12] M.A. Moges and T.G. Robertazzi, "Grid Scheduling Divisible Loads from Multiple Sources via Linear Programming", 16th IASTED International Conference on Parallel and Distributed Computing and Systems (PDCS), pp. 423-428, 2004.

[13] M. Baker, R. Buyya and D. Laforenza, "Grids and Grid Technologies for Wide-area Distributed Computing", in Journal of Software-Practice & Experience, Vol. 32, No.15, pp.

1437-1466, 2002.

[14] Jennifer M. Schopf, "A General Architecture for Scheduling on the Grid", Technical Report ANL/MCS, pp. 1000-1002, 2002.

[15] M. Swany, "Improving Throughput for Grid Applications with Network Logistics", Proc. IEEE/ACM Conference on High Performance Computing and Networking, 2004.

[16] R. Moreno and A.B. Alonso, "Job Scheduling and Resource Management Techniques in Economic Grid Environments", LNCS 2970, pp. 25-32, 2004.

[17] Shah Asaduzzaman and Muthucumaru Maheswaran,

"Heuristics for Scheduling Virtual Machines for Improving QoS in Public Computing Utilities", Proc. 9th International Conference on Computer and Information Technology (ICCIT’06), 2006.

[18] Gerald Sabin, Rajkumar Kettimuthu, Arun Rajan and P Sadayappan, "Scheduling of Parallel Jobs in a Heterogeneous Multi-Site Environment", in the Proc. of the 9th International Workshop on Job Scheduling Strategies for Parallel Processing, LNCS 2862, pp. 87-104 , June 2003.

[19] Sriram Ramanujam, Mitchell D. Theys, "Adaptive Scheduling based on Quality of Service in Distributed Environments", PDPTA’05, pp. 671-677, 2005.

[20] T. H. Cormen, C. L. Leiserson, and R. L. Rivest, "Introduction to Algorithms", First edition, MIT Press and McGraw-Hill, ISBN 0-262-03141-8, 1990.

[21] Tao Xie and Xiao Qin, "Enhancing Security of Real-Time Applications on Grids through Dynamic Scheduling", Proc. the 11th Workshop on Job Scheduling Strategies for Parallel

相關文件