Beruflich Dokumente
Kultur Dokumente
Conference on Smart City; IEEE 3rd International Conference on Data Science and Systems
can be extended for any k VM types. There is a one-to-one relation
between VMs and tasks, that is, only one VM can be allocated to a task
and a VM can support execution of a single task on it.
Given a set of user tasks T = {t1 , t2 , ..., tn }, of size n, we need to
find a set of suitable VM type for each task and allocate all the resulting
VMs to physical machines. The objective of the resulting schedule is to
minimize the amount of energy consumed without missing deadline of
any task.
!! Since uc is the critical utilization for each physical machine, we try
Fig. 2. Energy consumption versus total utilization of the host to achieve this value of utilization for each host. If ν is the number of
tion (Pdyn (t)) varies with the current frequency of the host machine. So VMs allocated to a host, then the sum of values of utilization of these
the total power consumption can be written as P (t) = Pmin + Pdyn (t) VMs must be approximately equal to uc at a particular point of time.
and as stated in [13], dynamic power consumption be formulated as
ν
uj ≈ uc , (6)
Pdyn (t) ∝ f (t)3 , where f (t) is the frequency of the host at time t. j=1
For single processor systems, we may safely assume that frequency is
directly proportional to the utilization u of the host. So, f (t) ∝ u(t), The tasks that need utilization above uc , are exceptions to this because
where u(t) is the utilization of the host at time t as stated in [13]. if executed at lower utilization, they won’t meet their deadlines. So, they
Therefore, we can say should be scheduled on separate hosts individually using a suitable VM
type. Now, the problem gets reduced to finding combination of VMs with
P (t) = Pmin + αu(t)3 , (2) ui ≈ uc , which can be allocated to the same host while minimizing the
where α is a constant. A similar power model has been used by Hsu et amount of energy consumed.
al. [21]. They considered P = α + xβ, where x varied with the value In our case, we try to not only minimize the number of active host
of utilization. with capable to running the workload without missing any deadline to
Also, time taken by a task of length e (execution time when run at reduce energy consumption but also run most of the hosts approximately
maximum utilization) to complete by running on VM with utilization u at critical utilization.
can be expressed as t = ue . Therefore, if we assume that utilization does
IV. C LASSIFICATION OF CLOUD SYSTEMS
not vary throughout the execution of the task, then, energy consumed
by the host can be computed as We have analyzed energy consumption characteristics of the system
which are based on the value of critical utilization, uc (as calculated in
E = Pmin + αu3 . ue = e. Pmin u
+ αu2 (3) equation 4). The value of uc depends on the values of Pmin and α. Since
we are considering homogeneous cloud system, these values are same
Figure 2 shows energy consumption of tasks executed at different for all the hosts. Based on this, we have categorized our problem into
utilization values of a host with Pmin = 100 and α = 70. The resultant three types of systems, out of which two fall in the category of systems
plot is an inverted bell curve. The lower most point shows the minimum with extreme static power consumption and the third type refers to the
energy consumed by the host and the corresponding utilization is called systems with general specifications. In general systems, we classify the
critical utilization, uc . cloud system based on host or physical machine characteristics into three
At critical utilization uc , dE
du
= 0, from equation 3 categories and these categories or types are:
2 • Type 1: Host with negligible static power consumption and in this
dE
du
= e. Pmin
u
+ αu = 0, ⇒ e. − Pmin u2
+ 2αu = 0
type of cloud, the Pmin of the host is negligible with respect to
αu3 (uc = 0).
3
⇒ uc = Pmin
2α
(4) • Type 2: Host with significantly high static power consumption, and
critical utilization of the host is above 1 (uc > 1).
So, we can see that the value of critical utilization is independent of • Type 3: This is most common type of cloud, where the host critical
length of task executed on the system. It only depends on the values utilization uc lies between 0 and 1.
of Pmin and α. Also the total energy consumption can be written as
E = t(2αuc 3 + αu3 ), that is, Scheduling approaches for type 1 and type 2 systems are described in
subsections IV-B and IV-C, respectively and for type 3 systems, the
E = tα(2uc 3 + u3 ) (5)
scheduling approach is described in section V.
where t is execution time of task at utilization u and which is equal to For the case when 0 < uc ≤ 1, both static and dynamic power
e consumption play significant roles. The value of critical utilization lies
u
and uc is critical utilization of the host.
The power model P (t) = Pmin + αu(t)3 used in our work assume in the range (0, 1.0]. But the VMs available with us can provide only
that there is local power optimization module (DVFS/DPM) at each host. discrete values of utilization i.e., 0.2, 0.4, 0.6, 0.8, 1.0 for T, S, M, L, XL
The local optimization module at a host controls the frequency and sleep types of VM respectively. So when more than one task run in parallel
state of the compute system which may have more then one compute on a host, the total value of utilization may not be exactly equal to
components. As the power consumption is dependent on utilization of uc . Hence, we calculate a value of utilization ut by which uc can be
the host, we can safely assume when the host is running at highest increased when exact value of uc cannot be reached.
utilization, it is running at highest capable frequency of operation and As seen in section III, for a single physical machine, when only
the frequency of operation of host is proportional to utilization of the one task is executing, energy consumption is minimum at its critical
host. utilization, uc . If more than one task get scheduled to a machine, they
should execute for approximately same time, so that, total utilization of
C. Problem Definition the host remains same throughout the time for which it is active (basic
The homogeneous cloud system available at our disposal has a set of assumption while computing the value of uc ). Moreover, if this is not
m physical machines (where m is infinitely many), which is denoted the case, CPU cycle wastage will be there.
by P M = {pm1 , pm2 , ..., pmm }. Power consumption by each host So, while scheduling many tasks to a host, we assume the following
at time t is P (t) = Pmin + αu3 (t), where Pmin is the static power things: (a) tasks should have approximately same execution time and
consumption and u(t) is total CPU utilization of the host at time t. (b) utilization of active hosts should be approximately equal to critical
Energy consumption of a host in executing a task is minimum at critical utilization to minimize total energy consumption. But the overall energy
utilization uc . Five types of virtual machines (VM) are there to choose consumption of the system also depends on the number of active hosts.
from and these are (a) tiny (T), (b) small (S), (c) medium (M), (d) large Reducing the number of active hosts may help in decreasing the total
(L) and (e) extra large (XL). Each VM type is characterized by the energy consumption of the system. So, instead of switching on a new
amount of utilization it provides to a task. The utilization values for T,180host, we may prefer an active host to schedule the available tasks. This
"#$ !"
Running Running Running
at at t at t Inactive
Host1 Host2 Host1 Host2
!!
Fig. 3. Options for scheduling the new task (a) Energy consumption versus uti- (b) Energy consumption versus uti-
Fig. 5. Energy consumption versus utilization of extreme cases
Algorithm 1 Scheduler for system with uc = 0
Require: Schedule for real-time tasks
Ensure: All the tasks meet their deadline and minimum energy gets consumed
1: for Each task ti in task set T = {t1 , t2 , ..., tn } do
2: Take the VM type with utilization just above or equal to ui = dei
i
Fig. 4. Hot threshold (uc + ut ) versus uc 3: Host the resulting VM on a new host and execute the tasks on their
selected VM.
may result in increasing the utilization of that host by a small amount 4: end for
but the total energy consumption can get lesser as compared to energy
consumption in case of more number of active physical hosts. for task ti is the one which completes the task before deadline when the
Let ut be the value of utilization which serves as an upper limit on task is allocated to it, that is, the VM type with utilization greater than
ei
the amount of utilization by which utilization of a host can exceed uc . di
. The total energy spent will only depend on the squares of utilization
So, uc + ut can be referred as hot threshold of a host. Hot threshold of the hosts. Beloglazov et al. [22] have considered only the current
of a host is the value of utilization above which the host becomes over- utilization as the deciding factor for scheduling the user requests. But
utilized and we do not get any benefits in term of energy reduction by such systems fall in the category of systems with extreme specifications
scheduling more tasks on it. which can be solved trivially.
As shown in Algorithm 1, choose the smallest feasible VM type for
A. Calculating the value of ut for hosts each task in the task set T = {t1 , t2 , ..., tn }, which can complete the
Suppose one host is running at utilization uc and a new task needs to be task before deadline. Allocate all the selected VMs to separate physical
scheduled with utilization requirements ut . To choose whether to switch machines and execute the tasks on their respective allocated VMs. This
on a new host and schedule the task on it or to schedule the task on the schedule is based on the fact that the value of uc is 0 for each physical
already active host, we need to compare energy consumption in both the machine and we want its total utilization to be as close as possible to uc .
cases and chooses the one with least amount of energy consumption. Thus, using least feasible VM will give us the schedule with least energy
Figure 3 depicts the two choices for scheduling the new task. consumption. Also, energy consumption of a host is directly proportional
Let E1 and Enew be the energy consumption of an already active PM to the square of total utilization in this case (equation 3 with Pmin = 0).
and the new PM switched on for the incoming task, when the task is As we know, given a set of n positive utilizations, say {u1 , u2 , ..., un },
scheduled on new PM (as shown in left side of Figure 3). Also E1 be the sum of squares of these values will be less than the square of sum
the energy consumption of the already active host when the incoming of these values.
task gets scheduled to the active host instead of a new host (as shown u1 2 + u2 2 + ... + un 2 ≤ (u1 + u2 + ... + un )2
in right side of Figure 3). Also, ut ∈ (0, 1.0]. Let t be the execution
time of the tasks. Then the energy consumption E1 , Enew and E1 can So, we should schedule the selected VMs on separate hosts. Let the
be written as E1 = t(Pmin + αuc 3 ), Enew = t(Pmin + αut 3 ) and value of utilization of the chosen VM be ui for task ti , then, the energy
E1 = t(Pmin + α(uc + ut )3 ) respectively. The incoming task will be consumed in executing all the tasks can be computed as follows:
scheduled on already active hosts, if it is beneficial in term of energy
n
consumption as compared to switching on a new host (even if it makes E=α (ei ∗ ui 2 ) (8)
total utilization of the host, u > uc ), which is E1 < E1 + Enew . So i=1
(eC1 , dC1 ) (eC2 , dC2 ) (eC3 , dC3 ) (eC1 , dC1 ) (eC2 , dC2 ) (eC3 , dC3 )
deii = dei deii = dei deii = dei dei ≤ deii + 0.2 dei ≤ deii + 0.2 dei ≤ deii + 0.2
C1 C2 C3 C1 C2 C3
(eC1 , dC1 ) (eC2 , dC2 ) task goes to the nearest cluster (eC1 , dC1 ) (eC2 , dC2 ) task goes to the lowest ID cluster
(a) different task mixes (b) different number of tasks (c) different uc
Fig. 8. Energy consumption of system
this case. As we can see, clustering techniques CLT4 gives us the will be excellent research direction. Considering system with preemption
least energy consumption for all the task mixes. and migration can also be a future extension of this work.
2) Figure 8(b) shows a comparison of energy consumption values
R EFERENCES
between all the four clustering techniques, when the requests
have different number of tasks. We have normalized the energy [1] Tarandeep Kaur and Inderveer Chana. Energy Efficiency Techniques
in Cloud Computing: A Survey and Taxonomy. ACM Comput. Surv.,
consumption of all the clustering techniques with respect to CLT1 48(2):22:1–22:46, October 2015.
for same task set. This comparison is done for same cloud system [2] R. Buyya et al. Cloud computing and emerging it platforms: Vision, hype,
with uc = 0.73. As we can see, similar pattern is being followed and reality for delivering computing as the 5th utility. Futu. Gen. Com. Sys.,
25(6):599 – 616, 2009.
for all the task sets. Here CLT4 is giving least energy consumption [3] Z. Li et al. Cost and energy aware scheduling algorithm for scientific
in all the cases. workflows with deadline constraint in clouds. IEEE Tran. on Serv. Compu.,
PP(99):1–1, 2017.
3) Keeping the task set same, Figure 8(c) shows a comparison of [4] C. Q. Wu, X. Lin, D. Yu, W. Xu, and L. Li. End-to-End Delay Minimization
energy consumption values between all the four clustering tech- for Scientific Workflows in Clouds under Budget Constraint. IEEE Trans.
niques on different cloud system. Here also, we have compared the on Cloud Computing, 3(2):169–181, April 2015.
[5] https://cloud.google.com/compute/.
normalized values of energy consumption with respect to CLT1 for [6] https://azure.microsoft.com/en-in/.
the same cloud system. Cloud systems with lower critical utilization [7] http://www.cisco.com/c/en/us/products/cloud-systems-
management/metacloud/index.html.
value gives better results with clustering techniques CLT1, CLT2 [8] https://www.joyent.com/.
and CLT3, whereas, cloud systems with higher critical utilization [9] https://aws.amazon.com/ec2/.
values give better results with CLT4. [10] A. Pahlevan et al. Towards near-threshold server processors. In DATE, pages
7–12, March 2016.
[11] M. Bambagini et al. Energy-Aware Scheduling for Real-Time Systems: A
From the above results, we can say that choosing the clustering Survey. ACM Trans. Embed. Comput. Syst., 15(1):7:1–7:34, January 2016.
[12] Anne-Cecile Orgerie et al. A Survey on Techniques for Improving the
techniques does not depend on the user request, but on the specification Energy Efficiency of Large-scale Distributed Systems. ACM Comput. Surv.,
of the cloud system. Since, the value of uc is known for a cloud system, 46(4):47:1–47:31, March 2014.
we can choose the clustering technique, without looking at the task mix. [13] M. Dayarathna, Y. Wen, and R. Fan. Data Center Energy Consumption
Modeling: A Survey. IEEE Commun. Surv. Tutorials, 18(1):732–794, 2016.
For cloud systems with lower critical utilization values, that is uc ≤ 0.6, [14] T. Mastelic et al. Cloud Computing: Survey on Energy Efficiency. ACM
choose any one of CLT1, CLT2 or CLT3, as they all produce comparable Comput. Surv., 47(2):33:1–33:36, December 2014.
results. For systems with higher uc , it is better to choose CLT4 as the [15] F. Farahnakian, T. Pahikkala, P. Liljeberg, and et al. Energy-aware VM
Consolidation in Cloud Data Centers Using Utilization Prediction Model.
clustering technique to minimize the energy consumption of the system. IEEE Trans. on Cloud Computing, PP(99):1–1, 2016.
[16] K. Ye et al. Profiling-Based Workload Consolidation and Migration
in Virtualized Data Centers. IEEE Trans. on Parallel and Dist. Syst.,
VII. C ONCLUSION AND FUTURE WORK 26(3):878–890, 2015.
[17] Z. Xiao, W. Song, and Q. Chen. Dynamic Resource Allocation Using Virtual
Machines for Cloud Computing Environment. IEEE Trans. on Parallel and
In this work, we investigate the problem of energy efficient bag of Distributed Systems, 24(6):1107–1117, June 2013.
real-time task scheduling in cloud environment, where the task can be [18] N. T. Hieu, M. Di Francesco, and A. Ylä-Jääski. VM Consolidation with
allocated to a set of discrete VM types provided by the cloud system. Usage Prediction for Energy-Efficient Cloud Data Centers. In IEEE Int.
Conf. on Cloud Computing, pages 750–757, June 2015.
In this work, we have carefully used the energy consumption verses the [19] C. Q. Wu and H. Cao. Optimizing the Performance of Big Data Workflows
utilization characteristics of the hosts of the cloud system to minimize the in Multi-cloud Environments Under Budget Constraint. In 2016 IEEE Int.
Conf. on Services Computing (SCC), pages 138–145, June 2016.
overall energy consumption of the system. In this work, we divided the [20] X. Zhu et al. Real-Time Tasks Oriented Energy-Aware Scheduling in
problem of energy efficient scheduling of set of real time tasks in cloud Virtualized Clouds. IEEE Trans. on Cloud Comp., 2(2):168–180, 2014.
to four smaller sub problems and then solved then individually. All the [21] Ching-Hsien Hsu et al. Optimizing Energy Consumption with Task Con-
solidation in Clouds. Information Sciences, 258:452 – 462, 2014.
scheduling policies were driven by the idea that the energy consumption [22] A. Beloglazov and R. Buyya. Energy Efficient Resource Management in
of a host is minimum at its critical utilization. Extending this work for Virtualized Cloud Data Centers. In IEEE/ACM Int. Conf. on Cluster, Cloud
the cloud system with heterogeneous host and for online real time tasks and Grid Computing, pages 826–831, May 2010.
185