Available at http://www.joics.com
A Service Revenue-oriented Task Scheduling Model of Cloud Computing ⋆
Jianguang Denga,b,∗, Yuelong Zhaob, Huaqiang Yuana
aEngineering & Technology Institute, Dongguan University of Technology, Dongguan 523808, China
bSchool 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: [email protected] (Jianguang Deng).
1548–7741 /Copyright © 2013 Binary Information Press DOI: 10.12733/jics20101954
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 N P -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 ma- jority 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 re- quirements 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 mar- ket 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 biologi- cal 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 op- eration 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 par- ent 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= {c1, c2, · · · , cn} and T = {t1, t2, · · · , tm} 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 ti is assigned to the computing node cj, the element of the matrix X, xi,j=1, else, xi,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.
The symbol budgeti represents the user’s budget for executing the task ti, namely, the service revenue gained by cloud provider for complete the scheduling of task ti in the given time period.
deadlinei represents the acceptable completion time of task ti, before which the task ti is expected to be completed with no fine. instruction counti represents the estimated instruction number of task ti, which is determined by processor. time f inii denotes the expected completion time of task ti. instruction costj denotes the computing cost of node cj for executing an instruction.
delay costi denotes the cost of task ti for delaying a time unit, which is paid by the cloud provider to user when the time f inii exceeds the corresponding deadlinei. latest linei denotes the worst completion time of task ti. 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 ti
is assigned to the computing node cj, i.e. xi,j=1, and the computing cost of the node cj for scheduling the task ti is:
computing costij = instruction costj × instruction counti (1) At the cost of the above spending, the service revenue gained by cloud provider is budgeti−fineij, where f ineij is the delaying fine of the node cj for scheduling the task ti, expressed as follows.
f ineij =
{0 if time f inii < deadlinei,
delay costi× (time finii− deadlinei) if time f inii > deadlinei. (2) Furthermore, the overall service revenue of the cloud computing system for scheduling the collection of submitted tasks T = { t1, t2, · · · , tm} is ∑n
j=1
∑m i=1
(budgeti− fineij)× xi,j, and the corresponding computing cost is
∑n j=1
∑m i=1
computing costij× xi,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 j=1
∑m i=1
(budgeti− fineij)× xi,j
∑n j=1
∑m i=1
computing costij × xi,j
s.t. time f inii < latest linei (3)
It is obvious that the above scheduling objective is a N P -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.
Submission request
Scheduler
Cloud resource manager
Cloud computing resource layer
Resource query Computing resource
information
Computing resource information Submitted tasks
Scheduling results Knowledge of submitted
Optimized solution Task scheduling
module
Cloudcomputingplatform
tasks and computingresources
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
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 c1, c2, c3 and c4, 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.
f itness =
∑n j=1
∑m i=1
(budgeti− fineij)× xi,j
∑n j=1
∑m i=1
computing costij× xi,j
(5)
4.3 Iterative Evolution
After obtaining the initial population, evolutionary operation is performed on the initial popula- tion 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 pcin 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 Scrossover. 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 prob- ability pm. The collection of new chromosomes reproduced according to the mutation operation is recorded as Smutation. Combining the collections Scrossover, Smutation, and the current population P (g), we get the collection Scrossover∪Smutation∪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.
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 schedul- ing 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
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 QoS- constrained 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.
Conventional min-min QoS-constrained min-min Service revenue-oriented method 120
100
80
60
40
20
0
The scheduling makespan
The scheduling makespan in the three algorithms
10 20 30 40 50 60
The size of the submitted tasks
70 80 90 100
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.
Conventional min-min QoS-constrained min-min Service revenue-oriented method 4.0
3.5
3.0
2.5
The service revenue per unit computing cost 2.0
The service revenue per unit computing cost in the three algorithms
10 20 30 40 50 60
The size of the submitted tasks
70 80 90 100
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 ob- jective. The final experimental results conducted on the Cloudsim simulator demonstrates that the proposed method outperforms the conventional Min-min algorithm and the improved QoS- constrained 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
[4] M. Xu, L. Cui, H. Wang et al., A multiple QoS constrained scheduling strategy of multiple work- flows 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