1.towards Optimizing Task Scheduling Process in Cloud Environment
1.towards Optimizing Task Scheduling Process in Cloud Environment
Cloud Environment
Yong Shi, Kun Suo, Jameson Hodge, Divya Pramasani Mohandoss and Steven Kemp
College of Computing and Software Engineering
Kennesaw State University
2021 IEEE 11th Annual Computing and Communication Workshop and Conference (CCWC) | 978-1-6654-1490-6/21/$31.00 ©2021 IEEE | DOI: 10.1109/CCWC51732.2021.9376146
Marietta, USA
Contact: yshi5@ kennesaw.edu
Abstract—The cloud computing paradigm offers many time, though other factors that must be considered include load
advantages over traditional self-hosting computing solutions by balancing and overall quality of service. Over the last few
abstracting computations from infrastructure. An essential task decades, researchers have designed many task scheduling
for any cloud provider is task scheduling, wherein tasks are algorithms including First-Come, First-Served (FCFS), Round
assigned to computing resources within the cloud system by a Robin, Min-min, Max-min and Sufferage [1].
broker. Numerous cloud task scheduling algorithms exist
including Min-Min, Max-Min, and Sufferage—though each is Each task scheduling algorithm is a policy that aims to
defined by performance trade-offs. BSufferage is proposed as a minimize certain performance metrics while making trade-offs
novel cloud task scheduling algorithm that augments the with other metrics. The most basic of these is the FCFS
performance of the classical Sufferage algorithm. Modeling the scheduling policy, where tasks are assigned to resources in the
algorithm using the open source CloudSim package and order they are received by the system. Round Robin (RR) is
comparing it to its precursor yields performance results for another policy in which each task is allocated an equal slice of
BSufferage—demonstrating decreased completion times, time to share computing resources resulting in a large overhead
increased throughput, and improved load balancing of resources. and poor response time, though it is more commonly used for
single-threaded systems. The Min-min policy allocates
Keywords— Task Scheduling, Cloud Computing, Sufferage computing resources to the task with the potential of being
Algorithm, Cloud Simulation
completed the earliest, while Max-min does the same but for the
I. INTRODUCTION task with the potential of being completed the latest. The Most
Fit policy aims to maximize load balancing by assigning tasks
Cloud computing is advantageous to traditional computing to resources that best utilize them, though it suffers from the
solution because the barrier of cost is reduced; users are only highest assignment failure ratio out of the listed algorithms. The
charged for their allocated resources. By abstracting from the Priority policy assigns every task a priority, with tasks having
computing resources, developers are unburdened with the larger priorities being executed before others and tasks with the
purchasing, configuring, provisioning, and maintaining of same priority being executed in order of arrival to the queue [2].
computing resources so that development time can be utilized
efficiently. Other advantages of cloud computing include Load balancing is important to consider so that resource
integrations with other cloud services, high composability, and utilization is constant and that no resource is overloaded or
scalability benefits, as most providers offer integrated under-utilized. Load balancing can be measured in CPU load,
customization of computing power, storage, bandwidth, etc. The network load, memory capacity, storage, etc. There are many
SPI model partitions the types of cloud providers into three load balancing algorithms created by researchers [5, 6]. One
categories, with each succeeding category becoming more such type is the family of static algorithms that requires the user
abstract than its predecessor—on the bottom is Infrastructure as having prior knowledge of the system. Other types are the
a Service (IaaS), on the middle is Platform as a Service (PaaS), dynamic algorithms for which prior knowledge is not required
and on top is Platform as a Service (PaaS). Many institutions and [3].
corporations utilize cloud computing to some degree, including
but not limited to Google, Microsoft, Amazon, IBM, etc. Active II. A CLOUD BASED TASK SCHEDULING APPROACH
research areas related to cloud computing include network As briefly described in the previous section Min-min, Max-
topology, task scheduling, and distributed/parallel computing. min, and Sufferage are three common and closely related task
scheduling algorithms [7, 8]. This section will detail the process
On both single-threaded processors and distributed or
of each policy and provide the basis for the proposed algorithm
networked computing systems, tasks must be assigned to
BSufferage.
computing resources. An objective of any cloud provider is to
distribute tasks among resources to maximize efficiency and The Min-min scheduling policy is split into two phases: first
reduce cost in a way that is scalable and flexible. Cloud is the calculation of the minimum completion time for every task
providers execute tasks with both multitasking (running multiple in queue, and second is the allocation of the task with the
tasks synchronously) and multiplexing (arranging multiple minimum completion time to its corresponding virtual machine.
flows synchronously). The most effective task scheduling Completion time is computed as the sum of the task’s execution
algorithms maximize throughput while minimizing completion time (which depends on the size of the task and the
0082
standard deviation of the virtual machine load as described in A. Experiments on BSufferage
the previous section. Throughput is the number of tasks that the Figure 2 shows the change of throughput (Y axis) for
system completes in a given span of time. A program is BSufferage on various Cloudlets (10 to 100) as the number of
implemented to generate synthetic data of the computational the virtual machines (VMs) changes from 9 to 30 (X axis).
power of each virtual machine and size of each task. The number Figure 2 shows that when the number of VMs increases,
of virtual machines tested ranges from 9, 12, …, 30. The number throughput increases as well. Figure 3 shows the change of
of tasks (described by Cloudlets in CloudSim package) ranges turnaround time (Y axis) for BSufferage on various Cloudlets
from 10, 20, …, 100. (10 to 100) as the number of the virtual machines (VMs) changes
from 9 to 30 (X axis). Figure 3 shows that when the number of
VMs increases, the average turnaround time decreases.
Fig. 1. Throughput for BSufferage on Cloudlets (10 to 100) and Virtual Machines (9 to 30)
0083
Fig. 2. Turnaround Time for BSufferage on Cloudlets (10 to 100) and Virtual Machines (9 to 30)
We compare the performance of BSufferage with the classic than Sufferage. Figure 7 shows an example of the comparison of
Sufferage algorithm. Figures 4, 5, and 6 show examples of the BSufferage and Sufferage on the turnaround time; from this, we
comparison of BSufferage and Sufferage on throughput when can see that BSufferage has lower turnaround time than
they are performed on various number of cloudlets; from these, Sufferage.
we can see that by average BSufferage has higher throughput
0084
Fig. 4. Throughput of BSufferage vs Sufferage with 70 Cloudlets
0085
Fig. 6. Turnaround Time of BSufferage vs Sufferage with 40 Cloudlets
Figures 8 shows an example of the comparison of BSufferage has smaller standard deviation than Sufferage,
BSufferage and Sufferage on the standard deviation of virtual which mean it achieves better load balancing than Sufferage.
machine workload when they are performed on various number
of cloudlets. From figure 8 we can see that by average
0086
IV. CONCLUSION [4] The Cloud Computing and Distributed Systems (CLOUDS) Laboratory,
University of Melbourne. http://www.cloudbus.org/intro.html
Augmenting the classical Sufferage cloud task scheduling [5] E. J. Ghomi, A. M. Rahmani, and & N. N. Qader, (2017). Load-balancing
algorithm yields the BSufferage policy with improved algorithms in cloud computing: a survey. Journal of Network and
turnaround time, load balancing, and throughput. The Computer Applications, 88, 50-71.
performance of the algorithm is determined by an experiment [6] Q. Xu, R. V. Arumugam, K. L. Yong, Y. Wen, Y. S. Ong, and W. Xi
run in the CloudSim framework and compared with its (2015). Adaptive and scalable load balancing for metadata server cluster
ancestors. From the results of the experimental data, our in cloud-scale file systems. Frontiers of Computer Science, 9(6), 904-918.
algorithm is measured to achieve a generally decreased [7] E. K. Tabak, B. B. Cambazoglu and C. Aykanat, "Improving the
Performance of Independent Task Assignment Heuristics
completion time and improved load balancing of computing MinMin,MaxMin and Sufferage," in IEEE Transactions on Parallel and
resources compared to Min-min and Sufferage. Distributed Systems, vol. 25, no. 5, pp. 1244-1256, May 2014. doi:
10.1109/TPDS.2013.107
REFERENCES [8] M. Maheswaran, S. Ali, H. J. Siegal, D. Hensgen and R. F. Freund,
[1] R. M. Singh, S. Paul and A. Kumar, “Task scheduling in cloud "Dynamic matching and scheduling of a class of independent tasks onto
computing”, International Journal of Computer Science and Information heterogeneous computing systems," Proceedings. Eighth Heterogeneous
Technologies, Vol. 5 (6), 2014. Computing Workshop (HCW'99), San Juan, Puerto Rico, USA, 1999, pp.
[2] P. Salot, “A survey of various scheduling algorithm in cloud computing 30-44. doi: 10.1109/HCW.1999.765094
environment”, M.E, computer engineering, India,
[3] R. P. Padhy, P. G. P. Rao, “Load Balancing in Cloud Computing
Systems”, National Institute of Technology, Rourkela, May,2011.
0087