Kanniga IJASCA SplIssue ID 062 FinalVersion
Kanniga IJASCA SplIssue ID 062 FinalVersion
Kanniga IJASCA SplIssue ID 062 FinalVersion
net/publication/312024227
Article in International Journal of Advances in Soft Computing and its Applications · July 2016
CITATIONS READS
7 224
2 authors, including:
SEE PROFILE
All content following this page was uploaded by Vimala Devi K. Rajendran on 04 December 2019.
Abstract
1 Introduction
Task scheduling is one of the critical activities performed in cloud computing
environments. Task Scheduling is complicated in cloud computing environment
due to its abstract heterogeneous architecture, dynamic behaviour and resource
heterogenity. Since cloud computing has evolved from grid computing,
distributed computing and parallel computing paradigms, the scheduling
algorithms developed for these systems can also be applied in cloud with suitable
modifications. The task scheduling is defined as the mapping of tasks to resources
which may be distributed over the cloud network. Many research works have been
done on task scheduling for improving resource utilization, reducing cost of
running jobs, improving the quality of service , maintaining fairness among the
jobs, maintaining excellent system throughput, and minimizing makespan (the
total length of the task schedule) by reducing waiting time of tasks and balance
the load across resources.
Tasks can be classified into dependent tasks and independent tasks where
dependent tasks have precedence constraints and independent tasks have no
dependencies among the tasks and have no precedence constraints to be followed
during scheduling. Dependent tasks can be handled by workflow scheduling with
the help of DAG (Directed Acyclic Graph).
The task scheduling algorithms can be broadly classified as static or dynamic
based on the time at which the scheduling or assignment decisions are made. In
the case of static scheduling, information regarding all the resources in the cloud
and the complete set of tasks is assumed to be available by the time the task is
scheduled on the cloud. But in dynamic scheduling, a prior knowledge of the
resources needed by the task and the environment in which it would be executed
is unavailable as the jobs arrive in a real time mode. Hence dynamic scheduling is
suitable for cloud since it deals with on-demand resource provisioning.
The dynamic scheduling algorithms can be used in two fashions namely on-line
mode and batch mode. In online mode, a task is scheduled onto a machine as soon
as it arrives. Each task is scheduled only once and the scheduling result cannot be
changed. Hence, on-line mode of dynamic scheduling can be applied, if the arrival
rate of the tasks in the real time is low. However, in batch mode the tasks are
collected into a set that is examined for scheduling at prescheduled times. While
online mode considers a task for scheduling only once, batch mode considers a
task for scheduling at each scheduling event until the task begins execution. Since
the cloud environment is a heterogeneous system and the arrival rate of requests is
too high, the batch mode scheduling is more appropriate for a cloud environment.
Some examples of batch mode algorithms are; First Come First Served scheduling
algorithm (FCFS), Round Robin scheduling algorithm (RR), Priority scheduling,
Random algorithm, Min-Min algorithm and Max-Min algorithm. Most fit task
scheduling algorithm (MFTF) is an example of on-line mode scheduling
Dynamic Batch Mode Cost-efficient 86
2 Related Work
This section gives various scheduling schemes classified as independent and
dependent task scheduling and algorithms prevalent in clouds.
3 Proposed Work
3.1 Rule of Assignment
The assignment problem is one of the combinatorial optimization problems in
operations research.
Let C = {c1, c2, . . . cm}, the set of m cloudlets.
Let w(ci) be the weight of ith cloudlet , assigned based on one of the physical
characteristics of the cloudlet, namely length, which is treated as a priority, where
w(c1) ≤ w(c2) ≤ .... ≤ w(cm).
Let V = {m1,m2, . . . mn}, the set of n virtual machines. Let w(mj) be the weight of
jth virtual machine assigned based on one of the physical characteristics of the
virtual machine, namely size, where w(m1) ≥ w(m2) ≥ .... ≥ w(mn).
A cloudlet ci is assigned to a virtual machine mj , where i is the smallest integer
and j is the largest integer, such that w(ci) ≤ w(mj ).
We observe that for a cloudlet ci if there is no mj with w(ci) ≤ w(mj ), then ci
cannot be executed by any machine in the set V . This assignment rule minimizes
the cost of executing the cloudlets.
end do;
m = m− 1;
until flag = false or m = 1;
Step 3: Let V = {m1,m2, . . .mn}, the set of ’n’ virtual machines. Sort the VMs in
descending order of their size and let w(mj) be weight of jth virtual machine,
assigned based on one of the physical characteristics of the virtual machine,
namely size.
Set n to number of VMs to be sorted;
Set w[VM] to the weight of VM;
repeat
flag = false;
for VM = 1 to n − 1 do
if w[VM > w[VM + 1] then
swap the VMs;
Set flag = true;
end if;
end do;
n = n − 1;
until flag = false or n = 1;
Step 4: choose the smallest i and largest j such that,
w(ci) ≤ w(mj)
Step 5: w(mj ) → w(mj ) − w(ci)
Step 6: When mj finishes ci
C → C − {ci}
w(mj ) → w(mj) + w(ci)
Step 7: Repeat from step 4 until C = φ
4 Simulation Study
The CloudSim toolkit is used to simulate heterogeneous cloud environment. Here
the term, cloudlet and task can be used interchangeably. Datacenter maintains
virtualized set of physical resources and provide them as services. Datacenter
broker schedules each task to the appropriate resources. As the cloudlets (tasks)
are submitted by the user, it is the task of the datacenter broker to assign those
tasks to the VM. The VM starts running the cloudlets. Here scheduling algorithms
come into existence. Each cloudlet ci requires a different processing capacity for
its completion; and this determines the assignment of the cloudlet to a virtual
machine. The processing speed of Virtual machine is heterogenous and expressed
in terms of million instructions per second (MIPS). The selection of tasks to be
scheduled is based on assignment rule.
Three popular and standard batch mode scheduling schemes namely, round robin,
Min-Min, Max-Min and proposed approaches for VM selection are analyzed. The
proposed approach results in less cost of executing all cloudlets and reduces
average VM utilization as compared to other scheduling approaches.
The simulation configuration used in this experiment is shown in the following
table:
Table 1.Simulation Parameters
Parameter Value
Configuration of Data center
Data center architecture X86
Data center OS Linux
VMM Xen
Configuration of Hosts
No of Hosts 5
MIPS 1000
RAM 10 GB
storage 1 TB
Bandwidth 10000Mbps
Configuration of VMs
No of VMs 13
size varying
MIPS 250
RAM 1 GB
Bandwidth 1000Mbps
No of PEs 3
Configuration of Cloudlets
No of Cloudlets 10-50
Length Varying(in
MI)
File size 300Bytes
Output Size 300Bytes
the cost of all submitted cloudlets, average VM utilization and the results improve
with the increase in cloudlet count.
6 Conclusion
This paper presents various scheduling schemes prevalent in cloud and proposes a
new dynamic batch mode scheme for scheduling tasks based on assignment rule.
The complexity of the approach is analyzed and it is experimentally observed that
the proposed algorithm reduces cost of running tasks and average VM utilization
as compared to other scheduling approaches namely round robin, Min-Min and
Max-Min schemes. The proposed algorithm can further be improved by
considering some other parameters like make span and load balancing of VMs
which are also playing a key role in scheduling cloud tasks and comparing the
proposed algorithm with other dynamic batch mode scheduling algorithms such as
Berger model. As a future work, the tasks exhibiting dependency among them
should also be considered for scheduling. Further, in our future work we propose
to take up a practical case study with an intuitive illustration to demonstrate the
proposed algorithm in this paper.
References
[1] Nakku Kim, Jungwook Cho, Euiseong Seo. 2014. Energy-credit scheduler: An
energyaware virtual machine scheduler for cloud systems, Future Generation
Computer Systems, 32,128-137.
[2] Jinn-Tsong Tsai, Jia-Cen Fang, Jyh-Horng Chou.2013. Optimized task
scheduling and resource allocation on cloud computing environment using
improved differential evolution algorithm, Computers and Operations
Research, 40,Issue 12,3045-3055.
[3] Thamarai Selvi Somasundaram, Kannan Govindarajan. 2014. CLOUDRB: A
framework for scheduling and managing High-Performance Computing
(HPC) applications in science cloud, Future Generation Computer Systems,
Vol.34, 47-65.
[4] Francesco Palmieri, Luigi Buonanno, Salvatore Venticinque, Rocco Aversa,
Beniamino Di Martino. 2013. A distributed scheduling framework based on
Dynamic Batch Mode Cost-efficient 94
[16]P.D. Zegzhda, D.P. Zegzhda and A.V. Nikolskiy. 2012. Using graph theory
for cloud system security modeling, MMM-ACNS 2012, , LNCS, 7531, 309–
318.