Journal of Information & Computational Science 10:10 (2013) 3153 3161 July 1, 2013 Available at http://www.joics.com A Service Revenue-oriented Task Scheduling Model of Cloud Computing Jianguang Deng a,b,, Yuelong Zhao b, Huaqiang Yuan a a Engineering & Technology Institute, Dongguan University of Technology, Dongguan 523808, China b School of Computer Science & Engineering, South China University of Technology Guangzhou 510006, China Abstract Task scheduling strategy aims at finding an effective matching method between computing resources and submitted tasks, so as to achieve the reasonable allocation and effective execution of a large number of submitted tasks among computing resources. As a commercial service, cloud computing should gain as much service revenue as possible on condition that the QoS requirements of submitted tasks are satisfied. However, the majority of the existing cloud task scheduling methods aim at meeting the resource requests and QoS constraints of submitted tasks rather than earning more service revenue. Focusing on this point, a service revenue-oriented task scheduling model of cloud computing is proposed in this paper, which tries to improve the service revenue of cloud providers under the same condition. The final experimental results demonstrate that the service revenue-oriented cloud task scheduling strategy is superior to the classic Min-min algorithm and the improved Min-min algorithm based on QoS constraints in terms of the scheduling makespan of all submitted tasks and the service revenue per unit computing cost of the whole cloud system. Keywords: Cloud Computing; Task Scheduling; QoS Constraint; Service Revenue 1 Introduction Cloud computing is an inevitable technology trend with the rapid development of internet. In the cloud computing environment, it is not necessary for users to purchase and deploy any IT infrastructure, but simply to rent the essential hardware, software, computing devices, and storage resources in a low cost. By submitting task requests to the cloud computing platform, the users can complete all kinds of computing tasks and data storage businesses. Due to the different Quality of Service (QoS) requirements of different submitted tasks and the commercial property of cloud service, the cloud computing environment should try to maximize its service revenue under the condition of satisfying the QoS constraints of all submitted tasks while executing the users scheduling requests. Supported by National Natural Science Foundation of China (Grant Nos. 61170216 and 60573145). Corresponding author. Email address: dengjg@dgut.edu.cn (Jianguang Deng). 1548 7741 / Copyright 2013 Binary Information Press DOI: 10.12733/jics20101954
3154 J. Deng et al. / Journal of Information & Computational Science 10:10 (2013) 3153 3161 Given a collection of submitted application tasks and a collection of computing resources, the task scheduling problem of cloud computing aims at finding a scheduling strategy, based on which the cloud computing platform assigns all the submitted tasks to the different computing nodes, so as to achieve the reasonable allocation and the effective execution of a large number of application tasks among cloud computing resources. It is obvious that the task scheduling is a NP -complete problem, and it is impossible to obtain its global optimal solution in the polynomial time complexity. There are a lot of achievements and publications about the task scheduling problem appeared in recent years, and a number of scheduling methods are put forward by researchers, such as ant colony optimization method [1], hill climbing-based algorithm [2], taboo searching approach [3], multiple QoS-constrainted scheduling strategy [4], fuzzy bee colony optimization technique [5], and so on. Among the existing methods, the classic Min-min heuristics [6] and the Max-min heuristics [7] are often used to be the criterion to evaluate a given scheduling method. The majority of the existing task scheduling methods of cloud computing focus on the allocation and management of cloud computing resources, and pay more attention to meeting the resource requirements and QoS constraints of application tasks further than the service revenue of cloud providers, which is disadvantageous to the continuable development of the cloud computing market due to its commercial property, and thus they are difficult to be applied in the practical cloud computing environment. Genetic algorithm is a heuristic stochastic searching algorithm based on simulating the biological evolution mechanism in nature, in which firstly, the possible solutions of optimization problem are encoded into chromosomes which form the initial population, and then the evolutionary operation are performed on the initial population by using genetic operators, after that, a new generation of population is reproduced, which is more adaptive to the environment than its parent generation. Finally, repeat the above evolutionary operation until the population converges at an acceptable solution. The genetic algorithm has efficient global searching ability, which can quickly handle a large searching space, and can avoid falling into a certain local optimal solution, and so it can be applied in the complex objective optimization problem. According to the above analysis, from the standpoint of cloud service providers, a service revenue-oriented task scheduling strategy of cloud computing is proposed based on the genetic algorithm in this paper. Taking the commercial property of cloud computing into consideration, the proposed method tries to maximize the service revenue of unit computing cost of the whole cloud computing environment under the condition of satisfying the QoS constraints of submitted tasks. 2 The Formulation of Scheduling Objective Let the sets C= {c 1, c 2,, c n } and T = {t 1, t 2,, t m } denote the collection of computing resources and the collection of submitted application tasks in the cloud environment, where the letters n and m denotes the number of computing nodes and that of submitted tasks, respectively. X is a m n-dimensional task allocation matrix, the elements of which represent the mapping relationship between computing nodes and submitted tasks. If the task t i is assigned to the computing node c j, the element of the matrix X, x i,j =1, else, x i,j =0. It is assumed that all tasks are non-preemptive and a submitted task can only be allocated and scheduled on an arbitrary computing node.
J. Deng et al. / Journal of Information & Computational Science 10:10 (2013) 3153 3161 3155 The symbol budget i represents the user s budget for executing the task t i, namely, the service revenue gained by cloud provider for complete the scheduling of task t i in the given time period. deadline i represents the acceptable completion time of task t i, before which the task t i is expected to be completed with no fine. instruction count i represents the estimated instruction number of task t i, which is determined by processor. time fini i denotes the expected completion time of task t i. instruction cost j denotes the computing cost of node c j for executing an instruction. delay cost i denotes the cost of task t i for delaying a time unit, which is paid by the cloud provider to user when the time fini i exceeds the corresponding deadline i. latest line i denotes the worst completion time of task t i. Without loss of generality, we assume that the maximal fine paid by cloud provider is equal to the corresponding task budget, namely, when the completion time for scheduling a task exceeds its latest line, the cloud provider will not get any service revenue. When scheduling a task, the user advances its QoS requirements based on the budget and its urgency measure, and submits the corresponding scheduling request to the cloud system. Then, the cloud provider estimates its service revenue for scheduling the task in terms of its budget and its QoS requirements, so as to decide whether to accept the corresponding scheduling request. If the scheduling request is accepted, but not completed in the given time period, the cloud provider will pay a certain number of fine to the user based on his delaying time. From the viewpoint of cloud users, the scheduling of a submitted task must be accomplished before its latest complete time latest line, otherwise, the cloud provider will not get any service revenue. On the other hand, the main cost of cloud provider is the computing cost under the condition of satisfying the QoS constraints of submitted tasks. It is assumed that the task t i is assigned to the computing node c j, i.e. x i,j =1, and the computing cost of the node c j for scheduling the task t i is: computing cost i j = instruction cost j instruction count i (1) At the cost of the above spending, the service revenue gained by cloud provider is budget i fine i j, where fine i j is the delaying fine of the node c j for scheduling the task t i, expressed as follows. fine i j = { 0 if time finii < deadline i, delay cost i (time fini i deadline i ) if time fini i deadline i. (2) Furthermore, the overall service revenue of the cloud computing system for scheduling the n m collection of submitted tasks T = { t 1, t 2,, t m } is (budget i fine i j) x i,j, and the corresponding computing cost is n m computing cost i j x i,j. On condition that the QoS requirements of submitted tasks are satisfied, the cloud computing system should gain as much service revenue as possible at as small cost as possible. Thus, the proposed service revenue-oriented task scheduling strategy of cloud computing should maximize its service revenue per unit computing cost, i.e. its scheduling objection is as follows. objective = max n m (budget i fine i j) x i,j n m computing cost i j x s.t. time fini i < latest line i (3) i,j
3156 J. Deng et al. / Journal of Information & Computational Science 10:10 (2013) 3153 3161 It is obvious that the above scheduling objective is a NP -complete problem, and it is impossible to obtain its global optimal solution in the polynomial time complexity. 3 The Service Revenue-oriented Task Scheduling Model After formalizing the scheduling objective, we model the proposed service revenue-oriented cloud task scheduling strategy, which is shown in Fig. 1. Firstly, the user submits his or her scheduling requests of application tasks to the cloud computing platform. After receiving the scheduling requests, the scheduler sends the attribute information and the QoS constraints of submitted tasks as well as the computing resource information obtained from the cloud resource manager to the task scheduling module. Based on the knowledge of submitted tasks and computing resources received from the scheduler, the corresponding task scheduling objective is constructed in the task scheduling module, and then the genetic algorithm is adopted to optimize this scheduling objective. Finally, an acceptable optimized solution is returned to the scheduler. According to the optimized scheduling decision, the submitted tasks are scheduled on the cloud computing resource layer, and the final scheduling results are returned to the scheduler. Task scheduling module Cloudcomputingplatform Optimized solution Knowledge of submitted tasks and computingresources Submission request Scheduler Computing resource information Cloud resource manager Submitted tasks Scheduling results Resource query Cloud computing resource layer Computing resource information Fig. 1: The architecture of the service revenue-oriented cloud task scheduling model 4 The Solving of Scheduling Objective In this paragraph, the scheduling objective mentioned above is solved in the polynomial time complexity based on the genetic algorithm. The detailed objective solving steps are introduced in the following. 4.1 Population Initialization Let the symbols N and Count represent the population size and the iteration counter of the genetic algorithm, respectively. Initially, Count=0. In order to globally solve the proposed task scheduling strategy based on genetic algorithm, all possible scheduling schemes should be encoded into chromosomes. For instance, on assumption that m=5, n=4, and the corresponding task allocation matrix X is given as below, we can adopt the following approach to achieve the
J. Deng et al. / Journal of Information & Computational Science 10:10 (2013) 3153 3161 3157 chromosome encoding. X = 0 0 0 1 0 1 0 0 0 1 0 0 1 0 0 0 0 0 1 0 4 2 2 1 3 11 01 01 00 10 (1101010010) (4) According to the binary transformation operation, list the task allocation matrix X in a row and we can encode an arbitrary task scheduling solution into a corresponding chromosome in the above method, in which the binary strings 00, 01, 10, 11 represent the corresponding tasks are scheduled on the computing nodes c 1, c 2, c 3 and c 4, respectively. In this way, encode all possible scheduling solutions based on the given population size N, and we can obtain the initial population P (0). 4.2 Fitness Function Fitness function is used to evaluate the chromosome s adaptability to the surroundings. The greater its value is, the more opportunity to be maintained the corresponding chromosome has in the evolutionary operation of the genetic algorithm, and the better its corresponding task scheduling solution is. Taking the commercial property of cloud service into consideration, we take the service revenue per unit computing cost of the whole cloud system as the fitness function of the genetic algorithm in this paper, expressed as follows. fitness = 4.3 Iterative Evolution n n m (budget i fine i j) x i,j m computing cost i j x i,j After obtaining the initial population, evolutionary operation is performed on the initial population using the genetic operators, including crossover, mutation and selection. Repeat the above evolutionary operation iteratively, until we get a satisfactory solution. Crossover operation is achieved by exchanging some specific loci of two chromosomes chosen randomly from the current population P (g) in the crossover probability p c in a certain way, where the symbol g denotes the generation number of the current population, and initially, g=0. The collection of new chromosomes reproduced according to the crossover operation is recorded as S crossover. Mutation operation is achieved by changing some specific loci of a certain number of chromosomes, which are chosen randomly from the current population P (g) in the mutation probability p m. The collection of new chromosomes reproduced according to the mutation operation is recorded as S mutation. Combining the collections S crossover, S mutation, and the current population P (g), we get the collection S crossover S mutation P (g), from which, the top N chromosomes are selected based on the values of their fitness functions as the next population P (g+1), and let Count=Count+1. (5)
3158 J. Deng et al. / Journal of Information & Computational Science 10:10 (2013) 3153 3161 A new generation of population is obtained according to the above evolutionary operation, and then the corresponding evaluation is performed to them in terms of the task scheduling objective, i.e. the formula (3). On condition that the iteration number of the genetic algorithm exceeds its preset maximum iteration number, or the best chromosome is not improved based on the value of its fitness function in several consecutive generations of populations, the genetic algorithm terminates. Otherwise, repeat the above evolutionary operation iteratively, until the termination condition of the genetic algorithm is satisfied. 5 Experiments and Analysis Some simulation experiments are designed to evaluate the proposed service revenue-oriented cloud task scheduling strategy in this paragraph, and besides, the classic Min-min algorithm [8] and the improved QoS-constrained Min-min algorithm [9] are selected for the comparative study under the same condition. 5.1 Parameter Settings The simulation experiments are conducted on the Cloudsim simulator [10], which simulates a cloud computing environment with ten computing nodes. The number of PEs (processing elements) included in each computing node, the computing capability of each PE, expressed as MIPS (millions of instruction per second), as well as the computing cost per unit time of each PE are shown in Table 1. Table 1: The parameter settings of cloud computing environment ID of computing nodes N0 N1 N2 N3 N4 N5 N6 N7 N8 N9 Number of PEs 4 4 4 8 8 16 16 32 32 32 MIPS of PE 25 30 35 40 45 50 55 60 65 70 Cost per unit time of PE 5 7 9 11 13 15 17 19 21 23 The attribute parameters of submitted tasks, including instruction count, budget, deadline, latest line and delay cost are set randomly based on the given constraints, and there are a total of 100 submitted tasks involved in our experiments. When solving the proposed scheduling strategy using genetic algorithm, we set the initial population size as 120, the crossover probability is set as 0.75, the mutation probability is set as 0.20, the minimal evolution rate in three consecutive generations of populations is set as 0.25%, and the maximal iteration number is set as 300. It is noticed that the parameters set in the genetic algorithm depend on the empirical values obtained from several conducted simulation tests. 5.2 Experimental Results and Analyses In the above cloud computing environment, the proposed service revenue-oriented task scheduling strategy, the conventional Min-min algorithm, and the improved QoS-constrained Min-min algorithm are tested respectively, and the corresponding experimental results are compared and
J. Deng et al. / Journal of Information & Computational Science 10:10 (2013) 3153 3161 3159 analyzed. The quantity of the submitted tasks involved in every group of experiment is 10, 20,, 100 respectively, which are selected randomly from the submitted task list. The relationship between the scheduling makespan of all submitted tasks and the size of them is shown in Fig. 2, from which it is can be seen that, along with the increase of the submitted tasks, the scheduling makespans of the three algorithms are all increased. It is because that with the increase of the submitted tasks, the problem of rising resource competition will prolong the latency time of some tasks. In comparison, the QoS-constrained Min-min algorithm is always superior to the conventional Min-min algorithm due to the former taking the deadline constraint into account. Furthermore, the service revenue-oriented task scheduling strategy has the best makespan in the three algorithms owing to that it takes the computing cost into consideration and takes maximizing the service revenue per unit computing cost as its scheduling objective, which makes that the service revenue-oriented task scheduling strategy always try its best to globally schedule all the submitted tasks on the best proper computing resources. On the other hand, the submitted tasks are always expected to be assigned to the computing resources with the minimum earliest completing time in the conventional Min-min algorithm and the QoSconstrained Min-min algorithm, which will cause the load imbalance of the cloud environment and prolong the latency time of some scheduled tasks, as well as the scheduling makespan of all submitted tasks. The scheduling makespan 120 100 80 60 40 20 The scheduling makespan in the three algorithms Conventional min-min QoS-constrained min-min Service revenue-oriented method 0 10 20 30 40 50 60 70 80 90 100 The size of the submitted tasks Fig. 2: The relationship between scheduling makespan and the size of tasks Fig. 3 shows the service revenue per unit computing cost of the three algorithms with respect to the size of submitted tasks. As can be seen that, the service revenue-oriented algorithm outperforms the other two algorithms obviously, which is because that its system load is more balanced and it schedules more reasonably than the other two algorithms. As mentioned above, the load imbalance of the Min-min algorithm prolongs the latency time of some submitted tasks, which eventually decreases the service revenue per unit computing cost of this algorithm. In comparison, due to taking the deadline requirement into account, the QoS-constrained Min-min algorithm is better than the Min-min algorithm in the service revenue per unit computing cost. Along with the increase of the size of submitted tasks, the service revenue per unit computing cost of the three algorithms decreased due to the rising resource competition prolonging the total latency time of submitted tasks.
3160 J. Deng et al. / Journal of Information & Computational Science 10:10 (2013) 3153 3161 The service revenue per unit computing cost 4.0 3.5 3.0 2.5 The service revenue per unit computing cost in the three algorithms Conventional min-min QoS-constrained min-min Service revenue-oriented method 2.0 10 20 30 40 50 60 70 80 90 100 The size of the submitted tasks Fig. 3: The relationship between service revenue per unit computing cost and the size of tasks 6 Conclusions Task scheduling strategy is a research hotspot of cloud computing technology, which aims at finding an effective matching method between computing resources and submitted tasks, so as to achieve the reasonable allocation and effective execution of a large number of submitted tasks among cloud computing resources. As a kind of commercial service, the cloud computing should gain as much service revenue as possible under the condition of satisfying the QoS requirements of submitted tasks. Focusing on this point, a service revenue-oriented task scheduling model of cloud computing is proposed in this paper from the standpoint of cloud provider, which takes maximizing the service revenue per unit computing cost of cloud system as its scheduling objective. The final experimental results conducted on the Cloudsim simulator demonstrates that the proposed method outperforms the conventional Min-min algorithm and the improved QoSconstrained Min-min algorithm in the scheduling makespan of all submitted tasks and the service revenue per unit computing cost of the whole cloud computing system. However, due to the assumption that all tasks are non-preemptive and a submitted task can only be allocated and scheduled on a computing node in this paper, the proposed service revenue-oriented cloud task scheduling model is not flexible to the practical application scenario of cloud computing, and we will focus on this point in the future. References [1] S. Lorpunmanee, M. N. Sap, A. H. Abdullah et al., An ant colony optimization for dynamic job scheduling in grid environment, International Journal of Computer and Information Science and Engineering, 1(4), 2007, 207-214 [2] Q. Wang, Y. Gao, P. Liu, Hill climbing-based decentralized job scheduling on computational grids, The First International Multi-Symposiums on Computer and Computational Sciences, Hangzhou, China, 2006, 705-708 [3] Hoang Pham, Springer Handbook of Engineering Statistics, London, USA, Spring-Verlag. 2006, 229-247
J. Deng et al. / Journal of Information & Computational Science 10:10 (2013) 3153 3161 3161 [4] M. Xu, L. Cui, H. Wang et al., A multiple QoS constrained scheduling strategy of multiple workflows for cloud computing, IEEE International Symposium on Parallel and Distributed Processing with Applications, Chengdu, China, 2009, 629-634 [5] K. Mukherjee, G. Sahoo, Mathematical model of cloud computing framework using fuzzy bee colony optimization technique, International Conference on Advances in Computing, Control, & Telecommunication Technologies, Trivandrum, Kerala, 2009, 664-668 [6] X. He, X. Sun, G. Laszewski, QoS guided min-min heuristic for grid task scheduling, Journal of Computer Science and Technology, 18(4), 2003, 442-451 [7] O. M. Elzeki, M. Z. Reshad, M. A. Elsoud, Improved max-min algorithm in cloud computing, International Journal of Computer Applications, 50(12), 2012, 22-27 [8] T. D. Braun, H. J. Siegel, N. Beck et al., A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems, Journal of Parallel and Distributed Computing, 61(6), 2001, 810-837 [9] J. Liu, G. Li, An improved min-min grid tasks scheduling algorithm based on Qos constraints, Proc. of the International Conference on Optics Photonics and Energy Engineering, 2010, 281-283 [10] R. N. Calheiros, R. Ranjan, A. Beloglazow et al., CloudSim: A toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms, Software: Practice and Experience, 41(1), 2011, 23-50