+ All Categories
Home > Documents > [IEEE 2014 Sixth International Conference on Ubiquitous and Future Networks (ICUFN) - Shanghai,...

[IEEE 2014 Sixth International Conference on Ubiquitous and Future Networks (ICUFN) - Shanghai,...

Date post: 03-Feb-2017
Category:
Upload: sumi
View: 216 times
Download: 1 times
Share this document with a friend
2

Click here to load reader

Transcript
  • Budget-Aware Task Scheduling in the Cloud

    Vasileios Thanasias and Choonhwa Lee Division of Computer Science and Engineering

    Hanyang University Seoul 133-791, Republic of Korea

    {vasilis,lee}@hanyang.ac.kr

    Sumi Helal Department of CISE University of Florida

    Gainesville, FL 32611, U.S.A. [email protected]

    Abstract This paper addresses the problem of task scheduling and resource provisioning for workloads submitted on IaaS clouds. It presents a novel algorithm capable of executing workloads with deadline constraints, while efficiently utilizing given budgets. Our simulation study demonstrates a substantial performance gain by the proposal. Keywords Cloud workload, task scheduling, resource provisioning.

    I. INTRODUCTION A cloud computing system offers an inexhaustible supply

    of resources, which can be dynamically claimed and released. Elasticity is a key aspect of cloud computing that refers to the capability to rapidly provision computing resources as needed. By enabling to scale up or down in response to the fluctuation of resource needs, it can effectively avoid performance degradation due to system under-provisioning and the unnecessary cost of over-provisioned resources.

    There have been a number of efforts focusing on the use of cloud computing for data-intensive applications [1]. An on-demand pricing model is examined, in which a trade-off between cost and performance is explored by delaying the execution of jobs in order to assign them to already provisioned VMs that become available some time later [2]. A performance-cost analysis for a set of provisioning and allocation heuristics is also relevant to our work [3]. To reduce the slowdown of short jobs, separate queues for each range of job durations are introduced, so that higher priorities are given to the queues for shorter jobs. Additionally, an optimal provisioning scheme for a priori known workflow ensembles with varying deadline and budget constraints is considered [4]. Rather than executing all the workflows, it tries to maximize user-prioritized workflows that can be completed within a given budget. Unlike others, this work focuses on an efficient scheduling of workloads with budget and deadline constraints in environments with heterogeneity in VM capacity.

    II. COST-AWARE CLOUD WORKLOAD EXECUTION The architectural design of our cloud workload scheduler is

    depicted in Figure 1. Resources are requested and allocated from the cloud. Users submit their workloads to a scheduler that queues component tasks and assigns them to available virtual machines in the pool. We assume that the workload is bags of independent tasks or batch workloads submitted by users. System elasticity is enabled by a brokering module which is interposed between the client and the cloud provider. This module queries the scheduler in order to acquire

    information about the system status such as queue size and remaining budget. For each task submitted, it decides whether to launch a new VM or to assign the task to an active VM. Tasks may have a different execution time on different types of VMs. We assume that tasks are non-preemptive. Data transfer times are included for their execution times, and a started billing time unit (BTU) is fully charged, even if it is partially used.

    Figure 1. Resource Provisioning Model

    Another key component is a Heterogeneity Adaptation Module (HAM) which extends our scheduling algorithm for a cloud infrastructure of heterogeneous VMs. The basic functionality of the module is to determine the type of VMs to be leased based on information such as utilization rate of each instance type. Tasks are submitted to the system with some hints regarding their requirements, such as CPU, memory, and I/O demands. HAM monitors the VM pool, collecting data like the amount of time during which each type of VMs was executing proper tasks and performance deterioration due to the assignment of tasks to non-optimal instances.

    A. Budget-Aware Provisioning Scheme Our scheme provisions resources and schedules tasks at

    runtime. A user has to provide an estimated monetary cost for a workload execution prior to its submission. The number of initially provisioned VMs is calculated through v = (budget / BTU_cost) / deadline. This number is the amount of BTUs that can be used per hour to meet the deadline. The algorithm boots up additional machines, when the waiting time of a task in the queue exceeds a waiting-time threshold (W). The threshold expresses tolerance in the slowdown of a task, with a lower one leading to a tendency to start more VMs for tasks waiting in the queue.

    If a VM becomes idle, the scheduling policy terminates it at the end of the current BTU. To avoid budget deficiency, the ratio between the remaining budget and progress is kept track

    This work was supported by Seoul Creative Human Development Program (HM120006) and by the MKE(The Ministry of Knowledge Economy), Korea, under the ITRC(Information Technology Research Center) support program (NIPA-2014-H0301-14-1017) supervised by the NIPA(National IT Industry Promotion Agency).

    309978-1-4799-3494-2/14/$31.00 2014 IEEE ICUFN 2014

  • of, and VM allocations are adjusted according to this ratio. In an event of VM termination due to an insufficient budget, virtual machines that are closer to the end of their BTU hours are terminated first. However, tasks that are small enough to fit in the remaining time can still be assigned to those machines.

    The rationale behind the scheme is to keep track of the ratio between the remaining budget and workload progress and determine the maximum number of the leased resources based on this ratio. To avoid going over budget in case of a burst of task arrivals at the last moment, a small safety margin can be added. During the runtime, the difference between the average and the peak amount of money spent in a time unit is subtracted from the current budget and it is used in the last time unit.

    B. Heterogeneity Adaptation Module We introduce a resource adaptation module on top of the

    provisioning policy engine to deal with heterogeneity in task resource requirements and VM instances computing power. HAM decides the number and type of leased instances based on the nature of tasks in the workload. Workload execution time is divided into two periods: the initial transient period which is from the beginning until the cost of rented VMs reaches the limit (i.e. maximal number of the allowed BTUs), and the stable period which starts after the initialization period.

    First, the available budget must be allocated and distributed across different VM types. In the initial transient period, the available budget is divided equally amongst each type of VMs. When a task arrives, it is assigned to an instance that has the fastest execution speed. To prevent an underutilization of the acquired instances, if the percentage of idle instances is higher than X1, the task will run on an idle instance first. However, if an optimal instance becomes available shortly, the task will be mapped to an optimal instance provided that it will be completed earlier from an instantaneous assignment to the non-optimal instance.

    In the stable period, the limit imposed on each type of instance is relaxed. More accurate instance allocation decisions can be made, since the proportion of each type of task contained in the workload is known by the time. We define loss rate as the deterioration in computing progress from tasks assigned to non-optimal instances. Suppose that a 20 minute task is assigned to a non-optimal VM that can complete it in 30 minutes. Then, the loss rate of this instance type is 10 minutes.

    The Tloss expresses the highest tolerable level in the loss rate of an instance type. Thus, if the loss rate per hour of an instance type increases more than Tloss, the instance is switched to the type with the least loss rate. A termination decision of VMs may leave some idle time from that point on until the BTU expires. Therefore, if there is a VM with overhead less than substitution overhead threshold (Tsub), the replacement is triggered. Otherwise, the change is delayed to next time unit. The two thresholds (Tloss, Tsub), determine the sensitivity for an instance substitution due to high loss rate.

    III. PERFORMANCE EVALUATION In order to evaluate the performance of our proposed

    algorithm, we implemented a cloud workload simulator based

    on CloudSim toolkit (http://www.cloudbus.org/cloudsim/). Our simulator consists of Datacenter Broker, Cloudlet, and VM entities. We added a mechanism that generates synthetic workloads with different types of tasks. We implemented our scheduling strategy with HAM and compared it with a round-robin approach that does not consider task types for VM instance assignments. By testing various types of workloads patterns, we confirmed a significant improvement in the cost efficiency and processing performance. It is noted that the cost of 1 BTU amounts to 0.06$ in our experiments.

    Our workloads consist of 1,000 tasks with a runtime of 1-80 minutes. A task can be CPU, Memory or I/O intensive. A single type of task occupies the 50-90% of the tasks contained in the workload; the portion of the remaining types is the same. The task runtime degradation for a non-optimal assignment is 10-20%. Three workload patterns that were considered are bursty, steady, and mixed. The average submission rate is 20 tasks per hour in the bursty pattern, and 6 tasks per hour in the steady pattern. The mixed alternates five periods of 200 tasks with bursty and steady arrivals. Table I compares the performance of HAM and RR(Round Robin) in terms of slowdown, which is defined as the time a task waited in the queue together with the added required runtime due to non-optimal VM type assignments. Our HAM consistently outperforms RR scheme against different types of workloads.

    TABLE I. SLOWDOWN COMPARISION

    Type of Workload

    Avg # of VMs

    Average Task Slowdown (min) Cost ($)

    HAM RR HAM RR Bursty 10 123.58 183.88 33.54 35.22 Bursty 15 4.74 11.08 36.06 37.08 Bursty 20 1.33 3.38 37.86 38.88 Steady 10 64.68 73.96 41.82 43.5 Steady 15 26.37 32.71 42.48 44.1 Steady 20 13.4 17.84 42.72 44.34 Mixed 10 147.5 167.05 35.46 37.5 Mixed 15 62.35 75.02 36.84 38.76 Mixed 20 29.48 37.19 37.38 39.54

    IV. CONCLUSION This paper presents a new scheduling algorithm which can

    handle workloads made up of tasks with different resource requirements. Our simulation study demonstrates a significant performance gain over existing schemes.

    REFERENCES [1] G. Galante and L.C.E. Bona, A survey on cloud computing elasticity,

    in Proc. of the 5th IEEE/ACM International Conference on Utility and Cloud Computing (UCC), November 2012.

    [2] S. Genaud and J. Gossa, Cost-wait trade-offs in client-side resource provisioning with elastic clouds, in Proc. of the 4th IEEE International Conference on Cloud Computing (CLOUD 2011), July 2011.

    [3] D. Villegas, A. Antoniou, S. Sadjadi, and A. Iosup, An analysis of provisioning and allocation policies for Infrastructure-as-a-Service clouds, in Proc. of the 5th IEEE International Conference on Cloud Computing (CLOUD 2012), May 2012.

    [4] M. Malawski, G. Juve, and E. Deelman, Cost-and deadline-constrained provisioning for scientific workflow ensembles in iaas clouds, in Proc. of International Conference for High Performance Computing, Networking, Storage and Analysis, November 2012.

    310


Recommended