Task - Scheduling - Algorithm - in - Cloud Compu
Task - Scheduling - Algorithm - in - Cloud Compu
E-mail: 1
[email protected], 2 [email protected], 3 [email protected]
ABSTRACT
Cloud computing offers opportunities to access remote physical and virtual resources. Due to the
continuing development of cloud computing, many challenges face this technology. One of these
challenges is tasks scheduling. It refers to the process of allocating users’ tasks to virtual machines (VMs)
with a goal of minimizing the turnaround time and improving the resource utilization. Tasks scheduling is
considered NP hard problem with O(mn ) run time complexity to schedule n tasks on m resources. The
process of tasks scheduling consumes a large solution space and with lacking of algorithms that can find the
optimal solution in a polynomial run time.
This paper presents a review study of various task scheduling algorithms in cloud environment
including: RR, MaxMin, MinMin, FCFS, MCT, PSO, and GA, with a case study on modified round robin
(MRR) algorithm. The MRR algorithm has been tested using CloudSim toolkit. The results show that
when using the MRR algorithm to schedule a number of Cloudlets over a number of VMs, the average
waiting of run time becomes less than when using RR in the same environments. Thus, it is advisable to use
the proposed MRR for tasks scheduling in cloud computing, because it reduces the average waiting time
and keeps the good features of the RR such as fairness, avoiding starvation, based on simple rule, dynamic
based on CC environment situations, and suitable for load balancing.
Keywords: Cloud Computing, CloudSim, Dynamic Scheduling, Modified Round Robin, Task scheduling,
Virtual Machines.
5869
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
In CC, the commercial service provider like innovation instead of being trapped in hardware and
Microsoft Azure, Amazone EC2, Google apps software setup. On the other hand, flexibility is
engine, etc offers the utility “pay as you go” to rent considered a bonus for cloud computing with
services to clients and the resources are delivered as varying hardware configurations, different
virtual machines based on service level agreement platforms, operating systems and many software
(SLA) and negotiation between the service provider packages. The usefulness of cloud computing also
and the consumer[3]. The access mechanism for is represented by offering suitable levels of
resources on the distributed network follows availability, reliability and fault tolerance which
common internet protocols and standards of guarantee the continuity of cloud functions and the
networking and the resources. The processing and provision of services even if some cloud sites are
storing for data are done via private cloud owned by down.
a company or using a public cloud and third part
The ubiquities growth of CC faces many
server in one of the distributed datacenters. There
obstacles and challenges such as security,
are also other emerging cloud deployments types
performance, and resource management [8]. Task
such as hybrid, community, and federated [4].
scheduling is one of the main issues related to
CC delivers three different service models which resource management and has curious impact on the
are categorized, as depicted in Fig1, into: efficiency, throughput, and resource utilization in a
infrastructure as a service (IaaS), platform as a cloud environment. Task scheduling in cloud
service (PaaS), and software as services (SaaS) [5]. computing concerns with assigning users’ tasks to
In IaaS, the resources, storage and processing the available recourses in a way the system
power are provided in the form of virtual machines. utilization and throughput are improved and SLA
PaaS provides a computing platform which includes requirements are not violated [9].
operating systems, programming languages, and
Tasks scheduling is a matter of mapping a stream
web based applications. In SaaS, the software and
of users’ tasks into the available resources in cloud
database access is allowed for a user according to a
computing environment. This is an optimization
particular usage based payment model.
problem, since the scheduler tries to find the
optimal tasks-VMs mapping (best matching) with
regard to scheduling times such as the response
time, make span and completion time.
Assume that there are K tasks T = {T1, T2, . . . ,
Ti, . . . , TK } and N resources R = {R1, R2, . . . ,
Rj, . . . , RN } in the current system of cloud
computing. Here, cloud resources refer to the
virtual resources [10].
The main target is to minimize the total
processing and waiting times associated with
scheduling in a way the system throughput is
maximized and quality of service (QoS) constraints
are preserved which include many user input
constraints, as in formulas (1) and (2).
Minimize (Processing time) = Min (∑ki=1
Figure1: Cloud Services [6] (Ti.length/VMmips)* NO_PE) (1)
5870
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
Tasks scheduling steps are modeled as illustrated submits the task to the winner resource
in Figure2. (decision process for allocating a resource).
5. The user gets the identification (id) of the
1. A user of CC submits a task to a scheduler.
resource and uses it through cloud interface.
2. A scheduler communicates with Cloud
6. The user sends the input data to the resource
Information System (CIS) for getting
according to the schedule.
information about resources.
7. The scheduler gets over time updated
3. CIS provided the resources information to the
information about the status of a cloud to
scheduler.
manage the schedule.
4. The scheduling algorithm does its role for
8. The information is sent to the user.
mapping task to the suitable resource and
The process of allocating virtual machines fairly investigation of exiting strategies to handle the
among tasks is to minimize the workload. challenge issues and attempts to enhance the round
Execution time is considered complicated robin algorithm for better benefits.
especially because there are many influencing
The rest of the paper is organized as follows. The
parameters that should be taken into consideration
next section presents a literature review about
like task completion time, cost, response time,
different task scheduling algorithms in CC. Section
power consumption etc [11]. In the other side, the
2 discusses some of the scheduling algorithms in
task scheduling problem is considered non
CC. Section 3 describes the methodology of
polynomial (NP)-hard problem, hence there is a
modified round robin. Section 4 shows a description
requirement for finding a suitable optimization
for Cloud Sim Toolkit. Section 5 briefs the
approach to solve the problem in a polynomial time
experimental setup, results and discussion.
[12].
Conclusion is discussed in Section 6.
Task scheduling in CC is a challenge issue. There
2. LITERATURE REVIEW
are needs to improve the performances and quality
of services, and reduce cost of execution. The task In this section, a brief review study is presented
scheduling in CC should consider the benefits of which shows some of the most relevant research
both the users and the service providers. The main works done for enhancing the performance of
research question, here, is: does the modified RR scheduling tasks in cloud computing environment.
algorithm will achieve better performance for task The review includes various tractable algorithmic
scheduling in CC? This paper presents an
5871
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
solutions that have been presented according with the optimization judgment is made to meet the cost
their chronological order. and performance constraints in O(KN) where N is
the number of tasks. So, the overall complexity of
Tracing the literature back to 2010,Van den
the algorithm is O(KN). The space complexity of
Bossche, R., Vanmechelen, K, and Broeckhove, J.
this algorithm is O(1), since the algorithm
[13] proposed an optimal tasks scheduling policy in
consumes constant number of tasks and resources
hybrid cloud model. The hybrid is composed ofboth
and does not involve any dynamic variables.
private and public cloud. The scenario of the
Gogulan, R., A. Kavitha, and U. Karthick Kumar,
problem is that some workloads have to be
in 2012, presented a new nature inspired algorithm
outsourced from private cloud to public cloud
called Multiple Pheromone Algorithm (MPA)
during the peak load intervals where there are no
which belongs to ACO algorithms [16]. MPA
sufficient resources in private cloud that cover the
generates dynamic schedule so the task is
submitted users tasks. These workloads are
completed in minimum time and the resource
constrained by a deadline and QoS requirements. In
utilization is enhanced. MPA achieved better QoS
this case, a decision making process is needed to
than ACO and algorithms according to three studied
select which workloads to outsource and to what
parameters: makespan, cost and reliability
cloud provider, in such a way the utilization in the
constraints.
internal data center is maximized and the cost of
running the outsourced tasks is minimized. A linear Other study was performed by Ravichandran, S.
programming technique was used to tackle this and E. R. Naganathan, in 2013 [17]. They applied
optimization problem and it performed well in genetic algorithm to solve the problem of
terms of cost minimization, feasibility and uncertainty in tasks arrival to the cloud. This
scalability. problem results in tedious binding for tasks to VMs.
The proposed idea to solve this problem was
In 2011, Sindhu, S. and Saswati Mukherjee [14]
dynamic scheduling where arrived user’s tasks are
proposed two algorithms for scheduling tasks in
queued and the scheduler role is to sort them based
cloud computing based on the processing
on the computation and memory usage; then, GA
requirements of a task and the computational
is used to pick each task and find the best fit for
capacity of a resource. The first algorithm, named
allocating a task to available virtual machines and
Longest Cloudlet Fastest Processing Element
obtain the global optimization.
(LCFPE), tries to minimize the makespan (the total
time for executing all tasks) by assigning the In 2014, Agarwal, Dr. and Saloni Jain [18]
lengthier cloudlets (tasks) to a Processing Elements presented in their work, for task scheduling in CC,
(PEs) having high computational power. The new algorithm, named generalized priority
second algorithm, named Shortest Cloudlet Fastest algorithm (GPA). The algorithm was experimented
Processing Element (SCFP), does the opposite. In and compared with FCFS and RR algorithms for
SCFP, the shorter cloudlets are mapped to PEs varying number of VMs and workload traces and
having high computational power process. Using using CloudSim simulator. The results show that
this algorithm, the flow time is minimized and the the proposed algorithm was more efficient than
starvation of longer jobs is avoided. They suggested FCFS and RR algorithms.
for future work experimenting more algorithms that
A multi-objective tasks scheduling algorithm for
use heuristic methods and also to consider the
mapping tasks to VMs was proposed by Lakra,
priority of tasks.
Atul Vikas, and Dharmendra Kumar Yadav in 2015
Ant Colony Optimization algorithm (ACO) was [19]. As opposed to single criteria based algorithm
used for optimizing scheduling under cloud [15]. which considers execution time only, the multi-
ACO resembles the ant colony behavior where an objective task scheduling algorithm takes into
ant moves in random direction searching for food consideration some other QoS parameters like
sources. In case of task scheduling, the tasks are execution time, cost, bandwidth of user etc. The
analogues to ants and the virtual machines imitate algorithm was evaluated using CloudSim and the
the food sources. ACO is used to solve results showed improved throughput for the
combinatorial optimization problems with several datacenter and reduced cost without violating the
targets of performance and costs. The complexity SLA.
analysis of ant colony optimization scheduling in
In 2015, A. Moradbeiky and V. Bardsiri [20]
cloud with K tasks and R resources is computed
conducted a research using Cuckoo Optimization
based on two stages: firstly, the algorithm finds the
based Task Scheduling Algorithm . In this
optimal path in O(K) time complexity . Secondly,
5872
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
algorithm, bird nets simulate the processing units [13]; minimization flow time and avoiding
(virtual machines) and eggs are the tasks. The starvation [14]; solving combinatorial optimization
cuckoo’s role is to lay eggs (tasks) in the nets problems with several targets of performance and
(VMs). Using this method and based on the number costs [15]; and better QoS according to makespan,
of virtual machines and the number of tasks (inputs cost and reliability constraints parameters[16].
of the algorithm) various orders of these machines Recent study [21] was simulated using CloudSim
are examined each time until tasks are allocated to simulator and the results showed reduced cost,
hosts in the right manner. improvement in resource utilization, increased
speedup, and higher ratio for algorithm efficiency
One year later, in 2016, Hamad, Safwat A., and
when compared with default GA and RR algorithms
Fatma A. Omara presented an improved genetic
[21].
algorithm (TS-GA) for task scheduling problem in
the cloud computing environment [21]. The aim of We choose to investigate the performance of the
the proposed algorithm was to minimize the modified RR algorithm for task scheduling in CC
completion time, and maximize resource utilization. for several reasons. These include the RR fairness
The results was simulated using CloudSim in allocation the processes to CPUs, avoiding
simulator and the results showed reduced cost, starvation [35], efficiency with respect to average
improvement in resource utilization, increased waiting time; and modifying the RR algorithm to
speedup, and higher ratio for algorithm efficiency take online decisions and dynamically adjust the
when compared with default GA and RR time slice based on situations of the CC
algorithms. environment is a more viable alternative for the
standard RR and promising results regarding the
Dandhwani, Vanita, and Vipul Vekariya
response time.
presented new K-mean based task scheduling
algorithm [22]. The idea of the proposed algorithm 2.1 Selected Task Scheduling Algorithms
is to create clusters of tasks using k-mean clustering
technique, and then allocates clusters to VMs as per In this study, seven common task scheduling
capacity of VMs. The results showed reduced algorithms are analyzed under cloud computing
execution time and makespan and improved the environment: RR, MaxMin, MinMin, FCFS , MCT,
total cloud system performance. PSO, and GA. Table 1 and Table2 describe each
Recently, in 2017, Madni, Syed Hamid Hussain job scheduling algorithm.
[23] compared the performance of six rule based 3. MODIFIED ROUND ROBIN
heuristic algorithms for tasks scheduling based on
some parameters like cost, degree of imbalance, The round robin algorithm is one of the best CPU
makespan and throughput using CloudSim. These scheduling algorithms that achieved the fairness in
algorithms are First Come First Serve (FCFS), allocating the processes to CPU based on time
Minimum Completion Time (MCT), Minimum quantum granted to each process [35]. It forces
Execution Time (MET), MaxMin, MinMin and each running process to be preempted from CPU to
Suffer age. The MinMin algorithm performed better ready queue so that no process allocate the CPU for
than other heuristics. They recommended that a long time and so no starved processes in the
heuristic algorithms used as a standard to compare system. This algorithm has been applied also within
new proposed algorithms. They suggested, for the cloud computing environment for allocating
future work, comparing of heuristic and meta- resources and proved its efficiency with respect to
heuristic algorithms may give optimal results and average waiting time for each process [36]. If the
cover the loopholes of each other to achieve the number of tasks is N in a specific CC deployment,
optimization of task scheduling in cloud computing then each task will allocate QT=1/N of the virtual
and to improve the MinMin algorithm for machine processing time and it will wait no more
optimizing the cost for task scheduling in cloud than (N-1)*QT, and the scheduling overhead
computing. (selecting task for execution) is O(1) [37].
However, the CC is not stable environment as there
From this review, it is clear that there is not a are many changes may arise while the tasks are
beneficial strategy to optimize task scheduling in waiting in the ready queue; and depending on a
CC considering all issues and parameters. For fixed time slice approach may not lead always to
examples, some consider the utilization in the the best system performance. On the other hand,
internal data center and the cost of running time determining the size of the time quantum and the
[12]; cost minimization, feasibility and scalability ratio of context switch needs a careful thought
5873
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
(Context switch is nearly close to 10% of the time this study, we will present the modified round robin
quantum time) [38]. (MRR) algorithm and find the relation between the
results of running MRR and RR [39]. Figure 8
A new enhancement was proposed in the
shows the task scheduling based on dynamic
literature to cope with this bottleneck in front of
quantum time. MRR calculates the time quantum
round robin algorithm. Modifying the round robin
dynamically so that a task may be granted a
algorithm to take online decisions and dynamically
quantum time which differs from the quantum time
adjust the time slice based on the situations is a
granted to other task; for example task1(T1) has a
more viable alternative for the standard RR and
QT1=5 while task(T2) quantum time QT2 =9.
promising results regarding the response time. In
5874
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
smallest task (smallest 2- The algorithm is operative for the the makespan
completion time ) and assigns it task scheduling in CC. (Batched jobs completion
to fastest machine (the one with 3- No pre-checking on machines time).
minimum completion time for load; it just smaller tasks on faster 2- The long tasks have to
that particular task).The machines. wait for smaller tasks to
algorithm is repeated until all Increase the throughput. end their execution.
tasks are exhausted. Unbalanced load.
The incoming task aims the 1- Simple. 1-Non preemptive.
queue with smallest waiting 2- Easy to understand 2-The short jobs at the back
time. The queue is managed by of a queue will wait until
FCFS
FIFO mechanism (first come long task in the front of
[28]
first out). queue is completed.
3-It is based on single
criterion for scheduling.
Shortest Job First Scheduling 1- Reduce average waiting time 1- Can result in starvation for
(SJN) is used to order a set of because it reduces the waiting longer jobs when there are
SJF tasks by placing the shorter time of the short jobs and a large number of small
[29] task in the front of the queue increases the waiting time of the jobs.
and the longer tasks at the end long jobs.
of a queue.
The algorithm scans the 1-MCT considers both execution 1-The process of assigning a
available VMs to find the most times and resource loads so it is task to certain machine with
appropriate machine to assign a considered a successful heuristic minimum completion time is
job for .The VM is selected that could be implemented in CC . done in arbitrary order so
MCT
based on the minimum each time a task is assigned
[30]
completion time by taking into to the fastest machine in the
consideration the processing remaining resources pool.
speed and the current workload
on a machine.
PSO is a type of meta- 1- The traffic workload using PSO is 1- Easy to fall into local
heuristics algorithms which balanced. optimum in large search
applies self-adaptive global 2- Scalable as it could be used with space.
search for optimization and it any number of tasks and 2- Slow convergence.
starts with random initialization resources.
for position and velocity for the 3- It can find near optimal solutions
practices population. Referring for mapping all tasks in the
to a problem of task workflow to the set of available
scheduling, the tasks are resources.
considered the particles and the 4- Less use of mathematical
PSO number of tasks in the operators compared with GA and
[31] workflow is the dimension of consequently less need for
these particles. Each dimension parameters tuning.
has a value associated to it 5- Simple and effective to be used in
indicates the resource where wide applications with little
the tasks workflow is heading computation overhead compared
to. So the mapping between to GA.
tasks and resources is
represented by a particle in
PSO. Like GA each particle is
evaluated using fitness
function.
Using GA for tasks scheduling, 1- The algorithm can find the near 1- Complexity in
each chromosome represents optimal solution (the fittest computations and long
the job vector and the tasks are mappings ) since it considers in time requirement.
the positions in this vector. The each generation the past and the 2- Trial/error parameters such
GA content of each position (task) new solutions to formulate the cross over and mutation
[32,33,34] is the id for the machine that best scheduling. percentages.
the task assigned to. The 2- Apply stochastic search to deal
population depicts several with large space problems.
mappings for tasks to machines 3- Lessen the waiting time.
and the GA plays the role of 4- Handle local optima problem.
5875
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
// M:#tasks, N:#VMs ,Cij: Assume the same cloud computing environment in the previous example.
completion time of a task, The tasks will be assigned to the machines according to MinMin as shown
Eij: execution time of a task, in Figure 4.
Rj: ready time of task i on
virtual machine j
1. As steps 1-3 in
MaxMinDo until all the
unscheduled tasks are
exhausted
2. For each unscheduled
Min task
5876
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
5877
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
5878
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
VM1 : VM1:4-
4 0=4
VM1 : 0 VM1:T1
VM2 : VM2:6-
T3 2 7 VM2 : 0 VM3 VM2:T2
6 1=5
VM3 : 0 VM3:T3
VM3 : VM3=9-
2+7=9 2=7
VM1 : T5:V VM1:6-
VM1 : 0 VM1:T5
4 M1 0=6
T4, VM2 : 6- VM2:T2,
9,2, VM2 : T6:V VM2:9-
T5, 4 4=2 T6
3 6 M2 1=8
T6 VM3 : 9- VM3:T3,
VM3 : T4:V VM3=18
4=5 T4
9 M3 -2=16
T9:V
VM1 : M1
VM1:14-
T7, 6 VM1 : 0 T8:V VM1:T9,
0=14
T8, VM2 : VM2 : 9- M1 T8
10,6 VM2:27-
T9 6 6+3=9 6=3 T10: VM2:T1
,2,8 1=26
,T1 VM3 VM3 : VM2 0,T7
VM3=18
0 :9+9=1 18-6=12 T7:V VM3:-
-2=16
8 M2
5879
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
o mutate individuals
o evaluate the fitness of Pj=∑Pij where
the modified individuals Pj is the execution time of all tasks (1…n) on VMj.
o Generate a new Pij is the execution time of task Pi on VMj.
population Pij =Ci/Psj where Ci is the computation complexity of tasks Pi and Psj is the
End while processing speed of VMj.
3- Selection process: in this step the two random individuals are
selected to do the GA operations on them in order to generate new
population and the nonelected individuals are kept untouched.
4- Crossover :is the process of exploring the search space and
generating new solutions( descendents) form the original
solutions(parents) by interchanging the genes of the selected
chromosomes.
5- Mutation: is to do operations such as swap,move,or replacement on
gene values.
6-Evaluation:the solutions are evaluated based on the fitness functions
and the ones that achieved good fitness are chosen in the next iteration
1- Set particle as equal to the Figure 7 shows the behavior of PSO algorithm in exploring the search space
size of ready tasks in {ti} ;the particles represent the tasks which are initiated randomly (red circles)
∈T and each one will have a fitness value which will be evaluated using a fitness
2- Initialize particles position function at each iteration .if the fitness value is better than the previous one
randomly from VM= 1, ..., j the local best or personal best (blue circles) are updated .The particles
and velocity vi memorize the best positions they have achieved .The best one of all of these
randomly. local best solutions represents the global best(green circle) which is in this
3- For each particle, scenario the best mapping of a task onto VM.
calculate its fitness value.
4- If the fitness value is better
than the previous best pbest,
set the current fitness value
as the new pbest.
5- After Steps 3 and 4 for
all particles, select the
best particle as gbest.
6- For all particles, calculate
velocity and update their
positions. Figure7:PSO example
If the stopping criteria or
maximum iteration is not
satisfied, repeat from Step3.
burst time by dividing the value of SReg by the
3.1 METHODOLOGY number of tasks residing in the ready queue.
Initially, the first job is allocated to virtual
Modified round robin does a simple machine and takes all its burst time. Then, the
improvement on the standard round robin algorithm scheduler begins computing the time slice for each
by dynamically taking into consideration the burst incoming request. Each task, when it is allocated to
time for each incoming task entering the ready run on a virtual machine, it will run for a time
queue. The time slicing process is based on period equals to the time slice granted to it by
computing the average burst time (expected needed modified round robin when entered the queue.
execution time for each task) of all the remaining When the time slice elapses, the task either joins the
waiting requests in the ready queue [40]. For ready queue again standing at the back of the queue,
achieving this purpose, two registers are used: SReg or it is removed from the ready queue.
for storing the total burst time of the all requests in Consequently, the scheduler adjusts the values of
the ready queue and AReg for storing the average the registers by subtracting the burst time of the
5880
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
Input: SReg (sum register), AReg(average register) , Tn (task n), BT(T)(the burst time of a task) , TQ (time quantum), Ready Queue(a
stack structure for tasks waiting their turn for execution in CPU).
Output: all tasks finish execution and leave the ready queue.
1. Begin
2. New request T arrives. T Enters ready queue.
3. Update SReg and AReg Request . //SReg includes the summation of the burst time for the whole tasks residing in the ready
queue and AReg is the value of SReg divided by the number of tasks exists in the queue at certain instant of time .
O(2)
4. T is loaded from ready queue into VM queue to be executed. O(1)
5. While (Ready Queue! = NULL) do O(N)….N=#Tasks
6. Ready Queue T.
7. Update SReg& AReg . O(2)
8. Load T // For Execution O(1)
end while
9. If (Ready Queue = NULL) then O(1)
10. TQ =BT (T) O(1)
11. Update SReg & AReg O(2)
else
12. TQ = AVG (BT of all request in Ready Queue). O(1)
13. Update SReg & AReg O(2)
14. // VM executes T by TQ Time O(TQ)
15. If (T terminated) then O(1)
16. Update SReg & AReg O(2)
else
17. Return T // To the Ready Queue with its updated . O(1)
18. Burst Time (BT) .
19. Update SReg & AReg O(2)
20. end if
Run time cost = 2 + 1 + n*(2+1) + 1 + [ ( prop of statements 10 and 11 say 1/2)*(1+2) + ( prop of statements 12 , 13,and 14 say
1/2)*(1+2+TQ) + 1 + [(prop of statement16 say 1/2)*2+(prop of statement17,18 say 1/2)*2 ] .
removed task from SReg and adding the value of Cloudsim framework is used to model the
the new joined tasks to AReg. The pseudo code for complicated real-world CC environment and
modified Round Robin Algorithm is shown in simulate its behavior. Using this tool a model
Table3 [41]. consists of different components such as
datacenters, host, service brokers, scheduling and
4. Cloudsim Toolkit
allocation policies CC be generated [43].
CloudSim is a priceless open source Java toolkit
For a CC system to start execution there should
developed originally in GRIDS distributed system
be at least one datacenter which is registered with
laboratory in the University of Melbourne,
the Cloud Information Service registry (CIS).
Australia [42]. CloudSim is used to simulate the
Multiple hosts are created within each data center.
cloud computing system components and services
The data center broker is responsible on receiving
in order to evaluate resource provisioning policies,
the submitted lists of cloudlets and of virtual
experiment different CC deployments, generate a
machines and performs the allocation policy for
mix of workload request distributions and test the
assigning cloudlets to VMs [44].
performance of various CC configurations and
scenarios. These functionalities exposed by Within CloudSim environment, each cloudlet is
CloudSim permits the CC developer to efficiently mapped to a VM and each VM is mapped to a host.
tackle and manipulate several critical issues related According to this, there are two levels of VMs
to cloud computing and finally develop the best provisioning [45]:
practice.
5881
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
5882
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
Table 4: Average waiting time (AWT) in seconds for RRc on Current Machine and RRp Previous Machine
No. Cloudlets AWT for RRp AWT for RRc Relative error ( |RRp-RRc| /RRp)
3 5 4.33 0.15
4 5 8.5 0.41
5 10 9.6 0.04
6 13 13.33 0.02
7 18 17.28 0.04
8 22 21.5 0.02
9 32 22.22 0.44
10 33 26.2 0.26
Figure 11: Average waiting time when MRR was used over different number of VMs for different Cloudlet amounts
5883
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
Figure 12: Average waiting time for 100 cloudlets run over different number of VMs using MRR
Figure 13: Average waiting time versus number of VMs for 100 cloudlets run using MRR and RR
Figure 13 shows part of the execution in algorithm after implementing the experiments in
CloudSim using 100 cloudlets on different number CloudSim .The experiments were conducted over
of VMs for both schedules RR and MRR. The various numbers of cloudlets 10,20,30, …, 300 and
graph shows that MRR is more efficient with less the number of virtual machines equal two. The
average waiting time than RR schedule with the results show that the experimental running time and
same specifications for both algorithms. the theoretical running time have similar behavior.
Figure 14 shows the experimental complexity
versus the theoretical complexity O(n) for MRR
5884
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
5885
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
5886
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
5887
Journal of Theoretical and Applied Information Technology
15th September 2018. Vol.96. No 17
© 2005 – ongoing JATIT & LLS
[45] Tian, W., Xu, M., Chen, A., Li, G., Wang, X.,
& Chen, Y. (2015). Open-source simulators for
cloud computing: Comparative study and
challenging issues. Simulation Modeling
Practice and Theory, 58, 239-254.
[46] Tani, Hicham Gibet, and Chaker El Amrani.
"Smarter round robin scheduling algorithm for
cloud computing and big data." Journal of Data
Mining and Digital Humanities (2018).
5888