You are on page 1of 5

International journal of Computer Science & Network Solutions Jul.2015-Volume 3.No.

7
http://www.ijcsns.com ISSN 2345-3397

Scheduling and resource allocation on cloud


computing: Survey

Amin Kamalinia, Ali Ghaffari


Department of Computer Engineering, Urmia Branch, Islamic Azad University, Urmia, Iran
amin.kamalinia@gmail.com
Department of Computer Engineering, Tabriz Branch, Islamic Azad University, Tabriz, Iran
a.ghaffari@iaut.ac.ir
Abstract
Cloud computing is a novel technology which aims to handles and provides online services to the
consumers. In order to have an efficient cloud environment and to use resources properly,task scheduling is
the one of the issues which researchers attempt to propose applicable scheduling algorithms in this
environment. Scheduling in distributed systems such as cloud computing and grid computing are considered
to be an NP-complete. Hence, many heuristic and meta-heuristic algorithms are proposed to optimize the
solutions.In this paper we survey several scheduling algorithms and issues related to the cloud computing.
Keywords: cloud computing, task scheduling, load balancing, makespan

I. Introduction
Recently cloud computing is considered as one of the most important issues(Chen, Liang, &
Hsu, 2015). Cloud computing is a new paradigm which emerged to change the manner of
accessing both hardware and software to produce, price, provide and deliver services and
computationalresources to consumers. Also, consumers be able to run their applications without
paying for software licenses, using well supplied machines (hosts) and high performance
computational resources (Grandinetti, Pisacane, & Sheikhalishahi, 2013).
On the other hand, scheduling is regarded as a decision-making process which is
regularly used in the majority of production and serviceprovidingindustriesandisusedtoenhance
efficiency optimization (Pinedo, 2012). Indeed, scheduling refers to the allocation of limited
resources to tasks throughout time (Robert & Vivien, 2010).Scheduling in cloud computing is
the complicated problem; hence, a centralized scheduling is required (Magoulès, Pan, & Teng,
2012). Scheduling in distributed systems such as cloud computing refers to the allocation of
multiple tasks to multiple resources which wants to enhance optimization. Ifassigning tasks to
resources is donecorrectly, this assigning helps to minimize makespan in applications,
thereforethe computer loads and communication overheads will be well balanced(Pacini, Mateos,
& García Garino, 2014).
In this paper, the scheduling algorithms which recently proposed to better makespan, load
balancing in resources, minimize monetary cost and other aspect in cloud environments are
reviewed.

21
International journal of Computer Science & Network Solutions Jul.2015-Volume 3.No.7
http://www.ijcsns.com ISSN 2345-3397

The rest of this paper is organized as follows. The essential of the Scheduling in cloud
computing are described in section 2. Section 3 illustrates the scheduling algorithms in cloud
environment. Finally, section 4 concludes the paper.

II. The essential of the Scheduling in cloud computing


Scheduling algorithms helps the utilization of the resources in systems. Scheduling algorithms
play important role to schedule the tasks in heterogeneous environment such as cloud and grid
effectively. So many of studies on task scheduling issues has been studied in distributed high
performance computing (HPC) environments such as clusters, Grid (Y. Li & Cai, 2014) and also
cloud computing.
III. Scheduling algorithms in cloud computing
The work in (Xu, Zhao, Hu, & Hu, 2011) proposed a task scheduling algorithm for the first time
based on Berger modelby considering the virtualization and commercial features in cloud
computing.This algorithm preserves the dual fairness constraint in the process of task scheduling.
In the first classificationconstraintit selects the user’s tasks based on service quality priorities
withconstructing a public wait function. In the selecting a user’s tasks, task classifies are taken
into consideration to avoid the fairness of resources in the selection process. The second
constraint is related to defining resource fairness function which is used to judge about the
justice and fairness of resource allocation.
In (Choudhary, Kacker , Choudhury, & Vashisht, 2012) a task algorithm based on QoS-
driven for cloud computing is proposed. First of all this algorithm computes and sorts the priority
order of the tasks regarding to attributes of them. In next step the algorithm assesses the
completion time of every task on different services and then maps each task onto service which
can finish the task in the minimal time. Thisalgorithm simulated on theCloudSim. Theresult
revealed that the algorithm achieves good performance and load balancing based on QoS-driven
in both priority and makespan.
A family offourteen heuristic scheduling in (Gutierrez-Garcia & Sim, 2013) is proposed. These
heuristics scheduling are used to concurrently executing BoTs in Cloud environment. Resource
allocation settings of Clouds by focusing on maximizing Cloud resource utilization based on the
remaining allocation times of Cloud resources are done by The Cloud scheduling heuristics. The
Cloud scheduling heuristics support the dynamic entryof the new Cloud resources without
rescheduling the given BoTs. Moreover, an elastic Cloud resource allocation mechanism is
proposed which autonomously and dynamically reallocates Cloud resources on demand to BoT
executions. Besides, an agent-based Cloud BoT scheduling approach is designed and
implemented to supports concurrent and parallel scheduling and execution of BoTs, and
concurrent and parallel dynamic selection and composition of Cloud resources (by making use of
the well-known contract net protocol) from multiple and distributed Cloud providers.
Experimental results illustrated that BoTs can be (1) efficiently executed by attaining similar (in
some cases shorter) makespans to commonly used benchmark heuristics (e.g., Max–min), (2)
effectively executed by achieving a 100%success execution rate even with high BoT execution
request rates and executing BoTs in a concurrent and parallel manner, and that (3) BoTs are
economically executed by elastically reallocating Cloud resources on demand.

22
International journal of Computer Science & Network Solutions Jul.2015-Volume 3.No.7
http://www.ijcsns.com ISSN 2345-3397

In (Kong, Lin, Jiang, Yan, & Chu, 2011), an efficient and dynamic job scheduling
algorithm proposed for virtual data centers. In this algorithm, a general task scheduling scheme
for data centers was constructed which takes accessibility and response efficiency into account.
In fact, this algorithm is formulated as a dual-purpose optimization model. In this work, a
suitable approach is proposed for modelling workload and ambiguous accessibility of virtual
service providing nodes.In this algorithm, type one and type two fuzzy logic systems are used.
An online dynamic scheduling algorithm SALAF is introduced and evaluated.
The work in(J. Li et al., 2012), authors in order to do resource allocation mechanismtwo new
online dynamic programming algorithms, i.e. DCLS, DCMMS, proposed. The experimental
results revealed that DCMMS was better than DCLS and FCFS and the dynamic process of
updating data significantly improved the competitive condition of resource conditions.
In (Malik, Huet, & Caromel, 2014), a model for grouping nodes with respect to network
delay is proposed. In fact, program scheduling was conducted based on network delay. The
proposed model designed for a part of cloud scheduler unit which aims at helping the scheduler
to make scheduling decisions based on different criteria. Network delay and the obtained node
grouping based on this delay are considered to be one of the criteria. The basic reasonbehind the
study is that the delay grouping algorithm does not create additional network overhead for
calculating algorithm; rather, it can function properly with incomplete delay data and it groups
nodes smartly based on delay. Moreover, this model has significant contribution on cloud
computing. In other words, it is capable of specifying the relationship between virtual machines
with minimum delay and it manage node grouping with respect to the delay of the internal node.
In (Grandinetti et al., 2013), an offline multi-objective mathematical formula was
proposed for the task scheduling in homogenous cloud computing environment to optimize total
average waiting time , makespan for the tasks and user hosts. This algorithm proposed based on
the -constraint. Moreover, it is tested on a set of samples and is compared with weighted-sum
algorithm.
in (Somasundaram & Govindarajan, 2014),the main motivation of authors was to design and
develop a cloud resource server for efficient handling of cloud resources and doing tasks for
scientific programs with regard to the deadline specified by the consumer. In this work. The
deadline is based on the task scheduling. Task scheduling was integrated and implemented with
particle swarm optimization algorithm (PSO). This algorithm aims to reduce makespan, cost, and
job rejection ratio and also maximize jobs meeting deadline.
The work in (Nathani, Chaudhary, & Somani, 2012)provides a good approach to
support deadline sensitive leases in Haizea with the minimizing the total number of leases
rejected by it. Proposed dynamic planning based scheduling algorithm is implemented in Haizea
that allow new leases and prepare the schedule at any time a new lease can be adapted.
Experiments results presented that the algorithm optimizes resource utilization and acceptance of
leases against the existing algorithm of Haizea.
Table 1 analyzed the above mentioned algorithms in terms of the objective variables, algorithm
evaluation, resource allocation mechanism and comparison approaches.

23
International journal of Computer Science & Network Solutions Jul.2015-Volume 3.No.7
http://www.ijcsns.com ISSN 2345-3397

Table I
AnalyzedAlgorithms
Algorithm Objective Algorithm Resource Compared
Paper
type variable evaluation allocation with
QoS preferences
(Xu et al.,
Berger model & CloudSim dynamic -----
2011)
Fairness resources selection
(Wu, Deng,
Zhang,
Berger model &
TS-QOS Zeng, & Load balancing & makespan CloudSim dynamic
min-min
Zhou,
2013)
FCFS, Min–
(Gutierrez- Makespan,
family of 14 Cloud min, Max–min,
Garcia & execution rate and elastically JADE dynamic
scheduling heuristics Greedy-R, and
Sim, 2013) reallocating
Greedy-P
Availability
(Kong et Min–min and
SALAF And responsiveness ------- dynamic
al., 2011) Sufferage
performance
own written
(J. Li et al., resource DCMMS and
DCLS simulation dynamic
2012) contention FCFS
environment
own written
(J. Li et al., resource DCLS and
DCMMS simulation dynamic
2012) contention FCFS
environment
inter-node
laboratory
(Malik et latency
GDA clusters & dynamic ------
al., 2014) &
Grid5000
network traffic
Makespan
Java &
&
Approximate - (Grandinetti Eclipse
total average waiting time off-line WS
constraint approach et al., 2013) environment
&
& Cplex
hosts
(Somasund
makespan, cost, job rejection
aram & ACO, GA and
PSO ratio and maximize jobs Matlab dynamic
Govindaraj RBA
meeting deadline
an, 2014)
existing
algorithm for deadline (Nathani et deadline sensitive leases and Python and
dynamic algorithm of
sensitive leases al., 2012) resource utilization Haizea
Haizea

IV. Conclusion
We survey 10 scheduling and resource allocation algorithms on cloud computing. The
algorithms consider some variables in this environments and aims to optimize them. The
essential of the scheduling in cloud computing is firstly discussed. Then the 10 scheduling
algorithms which attempt to optimize cloud computing in terms of specific aspects reviewed and
analyzed. In the future work we intend to research about recently algorithm in the cloud
computing in another subjects like service composition.

24
International journal of Computer Science & Network Solutions Jul.2015-Volume 3.No.7
http://www.ijcsns.com ISSN 2345-3397

References
i. Chen, C.-S., Liang, W.-Y., & Hsu, H.-Y. (2015). A cloud computing platform for ERP applications.
Applied Soft Computing, 27(0), 127-136. doi: http://dx.doi.org/10.1016/j.asoc.2014.11.009
ii. Choudhary, V., Kacker , S., Choudhury, T., & Vashisht, V. (2012). An Approach to Improve Task
Scheduling in a Decentralized Cloud Computing Environment. International Journal of Computer
Technology and Applications, 3(1), 312-316.
iii. Grandinetti, L., Pisacane, O., & Sheikhalishahi, M. (2013). An approximate -constraint method for a multi-
objective job scheduling in the cloud. Future Generation Computer Systems, 29(8), 1901-1908. doi:
http://dx.doi.org/10.1016/j.future.2013.04.023
iv. Gutierrez-Garcia, J. O., & Sim, K. M. (2013). A family of heuristics for agent-based elastic Cloud bag-of-
tasks concurrent scheduling. Future Generation Computer Systems, 29(7), 1682-1699. doi:
http://dx.doi.org/10.1016/j.future.2012.01.005
v. Kong, X., Lin, C., Jiang, Y., Yan, W., & Chu, X. (2011). Efficient dynamic task scheduling in virtualized
data centers with fuzzy prediction. Journal of Network and Computer Applications, 34(4), 1068-1077. doi:
http://dx.doi.org/10.1016/j.jnca.2010.06.001
vi. Li, J., Qiu, M., Ming, Z., Quan, G., Qin, X., & Gu, Z. (2012). Online optimization for scheduling
preemptable tasks on IaaS cloud systems. Journal of Parallel and Distributed Computing, 72(5), 666-677.
doi: http://dx.doi.org/10.1016/j.jpdc.2012.02.002
vii. Li, Y., & Cai, W. (2014). Update schedules for improving consistency in multi-server distributed virtual
environments. Journal of Network and Computer Applications, 41(0), 263-273. doi:
http://dx.doi.org/10.1016/j.jnca.2014.01.007
viii. Magoulès, F., Pan, J., & Teng, F. (2012). Cloud Computing : Data-Intensive Computing and Scheduling.
Boca Raton: CRC Press.
ix. Malik, S., Huet, F., & Caromel, D. (2014). Latency based group discovery algorithm for network aware
cloud scheduling. Future Generation Computer Systems, 31(0), 28-39. doi:
http://dx.doi.org/10.1016/j.future.2013.09.004
x. Nathani, A., Chaudhary, S., & Somani, G. (2012). Policy based resource allocation in IaaS cloud. Future
Generation Computer Systems, 28(1), 94-103. doi: http://dx.doi.org/10.1016/j.future.2011.05.016
xi. Pacini, E., Mateos, C., & García Garino, C. (2014). Distributed job scheduling based on Swarm
Intelligence: A survey. Computers & Electrical Engineering, 40(1), 252-269. doi:
http://dx.doi.org/10.1016/j.compeleceng.2013.11.023
xii. Pinedo, M. (2012). Scheduling : theory, algorithms, and systems (4th ed.). New York: Springer.
xiii. Robert, Y., & Vivien, F. d. r. (2010). Introduction to scheduling. Boca Raton: CRC Press.
xiv. Somasundaram, T. S., & Govindarajan, K. (2014). CLOUDRB: A framework for scheduling and managing
High-Performance Computing (HPC) applications in science cloud. Future Generation Computer Systems,
34(0), 47-65. doi: http://dx.doi.org/10.1016/j.future.2013.12.024
xv. Wu, X., Deng, M., Zhang, R., Zeng, B., & Zhou, S. (2013). A Task Scheduling Algorithm based on QoS-
Driven in Cloud Computing. Procedia Computer Science, 17(0), 1162-1169. doi:
http://dx.doi.org/10.1016/j.procs.2013.05.148
xvi. Xu, B., Zhao, C., Hu, E., & Hu, B. (2011). Job scheduling algorithm based on Berger model in cloud
environment. Advances in Engineering Software, 42(7), 419-425. doi:
http://dx.doi.org/10.1016/j.advengsoft.2011.03.007

25

You might also like