• No results found

Setting deadlines and priorities to the tasks to improve energy efficiency in cloud computing

N/A
N/A
Protected

Academic year: 2021

Share "Setting deadlines and priorities to the tasks to improve energy efficiency in cloud computing"

Copied!
9
0
0

Loading.... (view fulltext now)

Full text

(1)

Setting deadlines and priorities to the

tasks to improve energy efficiency in

cloud computing

Problem description

Cloud computing is a technology used more and more every day, requiring an important amount of servers and data centers. The growth of energy consumption implied by it is an important environmental concern especially since coal is the biggest source of electricity and the fastest growing [11]. Coal burning produces indeed an important atmospheric pollution and is responsible for the worst carbon dioxide emissions. A better energy efficiency (calculated as the ratio between the useful output of an energy conversion machine and the input, in energy terms) is also interesting in an economic point of view, since energy is an important cost for data centers and the price of electricity is increasing. Each reduction of energy consumption on servers, even small, has a great importance at the scale of a data center that contains thousands of servers. Data centers energy consumption already represents 1.3% of the global electricity use [10].

This study is about one of the ways to improve energy efficiency that consists to use the different servers in an efficient way by improving the tasks scheduling. To permit this, the user of the cloud would be asked to set a deadline or priority to a task while scheduling it. This better utilization of the resources of data centers can also permit to realize the same workload with a lower number of servers, which could bring to important savings.

Research objectives

The concept of this study is based on the fact that all the tasks do not always need to be done as soon as possible, for example some specific or recurring tasks (e.g. video conversion, daily backup...). By asking the user a priority or a deadline for a task he submits to the cloud, a clever scheduling program could permit to reduce the energy consumption.

This information about the importance of the tasks could permit to optimize the number of idle servers shut down using Virtual Machines Live Migration, but also to use the servers of the cloud infrastructure under optimized conditions and workload. Tasks with distant deadlines or low priorities could then sometimes be frozen to permit a high priority or short deadline task to be accomplished, and then started again when the workload of the cloud infrastructure gets lower.

The options of the deadline and of the priority to schedule the tasks should both be studied because they both give an indication about the importance of the task but can be used in different situations. To set a deadline, the user also has to give the time of calculation needed to realize the task with a certain amount of resources. However, it is not always possible to know the time of execution of a program, even approximately. This is what makes the use of priorities relevant. The goal of the study will not be to

(2)

determine which solution is the best between the use of priorities or deadlines, it will be to try to know if these solutions permit to obtain a better energy efficiency than the standard scheduling. One other objective is to determine if these solutions have no impact on the quality of service for the user and if the Service Level Agreement (defined as the contracted performance of the service) is respected.

Literature review

Several study observed a low energy efficiency of the data centers. Even if the servers were rarely idle, they were most of the time used between 10 and 50 percent of their capacity [1, 7].

Several solutions have then been proposed to improve the energy efficiency in data centers. The biggest gains of energy are obtained by shutting down the idle servers. Having as much servers switched off as possible is really important as idle servers consume a lot of energy. As an example in the experiment by Lefèvre et al. [8, part 3, figure 2], we see that the server used consumes 208 Watts when idle and 253 Watts when used at its maximum capacity. Similarly, G. Chen et al. [4] observed that the energy consumed by an idle server was superior to 66% of the peak power.

Two studies [8, 9] reduced by 25% the energy consumption by using Virtual Machine (VM) Live Migration. In these scenarios, the servers in the network are used in a way that the number of idle machines is maximized so that they can be shut down.

The solution proposed by Lefèvre et al. [8] is an infrastructure named Green Open Cloud. All the servers are equipped with power meters which a server, the Energy Data Collector, get energy logs from. The users submit their tasks in the Cloud Portal. The Energy Aware Resource Manager and Scheduler assigns the tasks to servers in an energy efficient way using information from the Energy Data Collector. It manages to have the biggest number of idle servers by using VM Live Migration and shuts them down. It also uses a prediction algorithm to switch on servers soon to be required and avoids too frequent On/Off cycles. The Network Presence Proxy permits to ensure the presence of the shut down servers on the network for security reasons (prevent an attacker to impersonate a switched off server). The gain of energy compared to a classic cloud computing infrastructure was of about 25%. This study also showed that an unbalanced strategy for task scheduling was more efficient than a balanced one. This means that the energy consumption is more important when we spread the tasks between different servers than when the tasks are transferred to another server only if the current server is used at its full capacity. The idea of using deadlines for scheduling was evoked as a possible improvement in the conclusion. Our study will use the Green Open Cloud infrastructure and modify it.

(3)

Figure 1: Green Cloud Architecture example [8]

Liu et al. [9] also proposed a “GreenCloud” architecture quite similar to the Green Open Cloud infrastructure, using VM live migration depending on the energy used and the workload of the servers, switching on or off servers etc. However, the VM live migration uses a different algorithm. This heuristic algorithm determines the best placement for a VM by searching a physical machine using a cost function that is minimized. The cost is calculated as the addition of the cost of the live migration of a VM, the cost of the workload of the servers and the cost of the energy consumed by the physical machine. This algorithm proved a good efficiency to find a near optimal placement quickly.

Some studies defined a set of recommendations for an energy efficient utilization of servers. F. Chen et al. [3] decided to analyze the energy efficiency of the cloud infrastructure for three kinds of tasks: computation-intensive, data-intensive, communication-intensive. They defined the optimum energy efficient parameters for a certain number of criteria, for example the optimum workload, number of VMs on a server etc. Qingwen et al. [13] studied the energy efficiency with quite similar objectives except that it was always in conditions of computation-intensive tasks. They studied frequency scaling against fixed frequency (they determined that frequency scaling was efficient until 65% of use of the CPU), the energy consumption of the memory, but they also determined that the number of virtual CPUs assigned to a VM should be chosen depending on the number of parallel threads of the program executed on it to improve the energy efficiency. These recommendations will be used in this study and applied to the cloud infrastructure. The scheduler would try to schedule in a way that optimizes these criteria, for example in terms of workload.

However, studies differ about the use of hyper threading (defined as the execution of two threads, or sets of instructions, at the same time in one CPU core) for computation intensive tasks. While F. Chen et al. [3] recommend to disable hyper threading for this kind of tasks, as well as Intel [2], Qingwen et al. [13] showed that the use of hyper threading gave a better energy efficiency on servers while using VMs. This result was verified whether the VMs were overcommitted or not, and the scheduling was observed

(4)

as much more efficient in some cases. For this study, it is required to determine if hyper threading should be enabled or not as we would like to have the most energy efficient infrastructure as possible. An experiment will then be necessary.

For the system of deadline or priorities to be relevant, users should be brought to use the system cleverly. The normal tendency is to have tasks done as soon as possible. In the case of cloud services sold to users, this behavior could be prevented by using an economic model based on the one proposed by Mukherjee et al. [12]. Applied to this situation, the idea is to get people using low priority tasks, which need less energy, by proposing lower prices for tasks done with a lower priority or distant deadlines.

Another idea to involve the consumer in energy consumption is given by Garg et al. [5] with the Carbon Green Cloud Architecture, which is more oriented on carbon dioxide emissions. The goal is to propose to the user “Green Offers” precising the type of service provided, pricing and time when it can be accessed for the least CO2 emissions. By applying this concept, a good decrease of energy consumption and

carbon dioxide was observed. This result shows that users can be an asset to improve energy efficiency if they can get something from it, in this case low prices and low carbon dioxide emissions.

Importance and benefits

This study could permit to improve the current solutions proposed on green cloud infrastructures for better energy efficiency. This subject is a hot topic because the fast growing popularity of cloud computing creates an important need of data centers and important growth of the electricity consumption that is already substantial.

The economic benefits of the study could be seen on two main points. First, lower energy consumption in data centers leads to lower electric bills. Secondly, a better utilization of the resources can permit to do the same tasks with a lower number of servers. It can then permit to need fewer servers per data centers or it ables to sell more services for cloud services companies.

The environmental aspects have a great importance in the potential benefits of the study. Reduce the carbon dioxide emissions is a major concern and challenge, and information and communication technologies are an important part of it since 2% of this emissions were estimated to be due to them in 2007, which is equivalent to the aviation [6].

Research design

The research would be divided in three main phases.

Hyper threading

The first experiment to be realized would permit to determine if hyper threading leads to a better, worse or equal energy consumption when on or off.

The hypothesis of this experiment is “if hyper threading is activated, the energy efficiency is the same than if it is not”.

This experiment will be done on a single server, it does not require to use a cloud infrastructure. A power meter will be used to measure the energy consumption of the server. A computation intensive

(5)

set of tasks will be used in this study to generate a certain workload for the CPU. This set of tasks would be executed two times on the server, once with hyper threading enabled and once disabled. The energy consumptions to accomplish the tasks will then be compared. As the cloud infrastructures run all their tasks in VMs, the set of tasks will be run in VMs in this experiment too, to ensure external validity in cloud computing use.

For this experiment to be valid, the results should be tested in different conditions. Two important variables that could be confounding are the number of VMs on the machine and the CPU use.

A proposed research design would then be close to:

CPU use of 25% CPU use of 50% CPU use of 75% CPU use of 100%

1 VM OHT on OHT off OHT on OHT off OHT on OHT off OHT on OHT off

2 VMs OHT on OHT off OHT on OHT off OHT on OHT off OHT on OHT off

3 VMs OHT on OHT off OHT on OHT off OHT on OHT off OHT on OHT off

4 VMs OHT on OHT off OHT on OHT off OHT on OHT off OHT on OHT off

OHT on and OHT off are respectively the two measures of the energy consumption for the set of tasks with

hyper threading on and off.

The maximum number of VMs could be changed and tests for more CPU use percentage could be done. This will depend on the characteristics of the machine used for the experiment and on the results obtained.

Depending on the final result of this experiment, hyper threading will be activated or not on the servers of the cloud infrastructure for the second experiment.

Scheduling algorithm

The second main phase of this study will be to determine and implement the scheduling algorithm. As we will use the Green Open Cloud infrastructure of Lefèvre et al. [8], this algorithm will be based on the one used by the Energy Aware Resource Manager and Scheduler. It will also use the concept of cost minimization proposed in the heuristic algorithm of Liu et al. [9].

Several parameters will be added to the cost function. The number of VMs, the workload etc. will have a low cost for a server when these parameters are near to their optimum conditions as defined in the studies of F. Chen et al. [3] and Qingwen et al. [13]. All these new parameters for the cost function would permit to get better energy efficiency locally for each server.

Another criterion the algorithm will have to consider is the fact that the quality of service and the Service Level Agreement should always been respected.

The scheduler will be able to freeze some tasks of low priority or distant deadline to permit tasks with high priority or short deadline to be done on time. For the management of deadlines to be possible, the user submitting a task will also have to enter the estimated usual time to accomplish the task.

In the worst cases, even if the scheduler will try to avoid it by all means, it could happen that a deadline is not met. Several solutions could be then possible: cancel the task, continue it without any change, or change the priority to a high priority. It seems that these options could all be appropriate depending on

(6)

the task, so one solution would be to ask the user what to do if the deadline is not met when he submits a task.

Test of the scheduling with deadline or priorities

This third phase and second experiment is the main one of the study, it consists on testing the deadline or priority scheduling on a cloud infrastructure.

The hypothesis for this experiment will be “the energy efficiency is the same with deadline or priority for the tasks than without”.

The testing environment will be an infrastructure similar to the Green Open Cloud. All the servers of the infrastructure will have the same characteristics. This point permits to prevent errors, some servers could have indeed different values as optimum conditions. Moreover, their energy efficiency would be different, which would make the calculations false.

The Energy Usage logs transmitted to the Energy Data Collector would be measured by power meters registering power information on every server. However, other data will be transmitted to the Energy Aware Resource Manager and Scheduler that are necessary for the cost function of the heuristic algorithm, for example the workload of the servers.

A set of tasks to accomplish will be determined, and tested in different conditions.

We want to test if the system works with only priorities, with only deadlines, and with a mix of tasks with priorities or deadlines:

Priority Deadline

Control group

Experimental group 1 X

Experimental group 2 X

Experimental group 3 X X

The experiment will be repeated several times with different sets of tasks, different values of priorities and deadlines, or different general workload on the infrastructure. If these experiments show good results, this experiment will be tested on real conditions to improve the reliability of the results.

Data analysis

For the first experiment, the result with or without hyper threading will be compared. If for all cases one solution is better than the other, the solution will be applied to the green cloud infrastructure. However, if the results vary, the cases where a solution is better than the other will be precisely determined. They would be used to enable or disable hyper threading on the servers depending on their CPU load and number of VM.

For the second experiment, several things will be considered. First of all, the analysis of the energy consumption of the four different groups will be analyzed to determine if the proposed solutions of

(7)

deadline or priority improve the energy efficiency. The logs of the tasks scheduling and freezing will be analyzed to verify if the Service Level Agreement was respected with the models proposed. The number of tasks that did not meet the deadline will also be calculated.

Considering the three factors, it should then be possible to confirm or infirm the hypothesis, to determine if the scheduling with priorities or deadline is relevant to improve energy efficiency.

Schedule

This research would need an amount of time of approximately four months and a half.

The first two weeks would be dedicated to drive the experiment about hyper threading. Three weeks would be necessary to determine the algorithm of the task scheduler, followed by a period of one month used to set up the modified cloud infrastructure. The experiment testing the efficiency of the use of deadline or priority for scheduling tasks would last two month since a lot of different tests need to be done in different circumstances to validate the results. One part of the data analysis would be done during the experiments and the other part would be done during a week after the end of the experiments, consisting of analyzing globally all the data acquired from the different tests.

Finally, the final report and the deliverables would be realized in two weeks.

Facilities and special resources

To undertake the experiments, a cloud infrastructure will be needed. The network would be required to have an infrastructure of servers exactly similar. If this is not respected, the internal validity would be threatened because the servers would have different energy consumption and different optimum energy efficient values.

Power meters will be used to collect the power consumption of the servers.

Deliverable

The goal of this research is to provide a set of recommendations for a better energy efficiency in cloud computing. The use of hyper threading, deadlines or priorities for the tasks and other factors will be discussed.

The other goal would be to furnish the program developed for the experiment set up in a way using the best parameters found.

Others

The experiments would have some limits. The fact that the servers used will be all the same (to avoid a confounding variable) will bring a threat to the external validity since the results could be different with servers of different characteristics in the same network. The experiment in real conditions is one solution to try to avoid this problem.

Some improvement could be done to this study. First, since the optimum parameters can vary from one server to another, a piece of software could be developed that would permit to run a test on a server

(8)

when it joins the network for the first time. Its optimum values would be determined automatically by running on it computation intensive test tasks.

Secondly, other parameters could be used in the heuristic algorithm. For example it could be aware of the carbon dioxide, like in the work of Garg et al. [5]. Since the amount of coal used to provide electricity can vary in some days or hours, the scheduling algorithm could be able to schedule more tasks when the percentage of electricity generated from the coal gets lower. The carbon emissions by the data center would then be diminished.

References

1.

Baroso, L. A., & Hozle, U. (2007). The Case for Energy-Proportional Computing. Computer, 40(12), 33-37.

2. Celebioglu, O., Saify, A., Leng, T., Hsieh, J., & Mashayekhi, V. (2009, 11 20). Performance Insights to Intel® Hyper-Threading Technology. Retrieved 12 10, 2013, from Intel Developer Zone:

http://software.intel.com/en-us/articles/performance-insights-to-intel-hyper-threading-technology

3. Chen, F., Grundy, J., Yang, Y., Schneider, J.-G., & He, Q. (2013). Experimental analysis of task-based energy consumption in cloud computing systems. Proceedings of the 4th ACM/SPEC International Conference on Performance Engineering (pp. 295-306). Prague, Czech Republic: ACM.

4. Chen, G., He, W., Liu, J., Nath, S., Rigas, L., Xiao, L., & Zhao, F. (2008). Energy-aware server provisioning and load dispatching for connection-intensive internet services. Proceedings of the 5th USENIX Symposium on Networked Systems Design and Implementation, 337-350.

5. Garg, S., Yeo, C., & Buyya, R. (2011). Green cloud framework for improving carbon efficiency of clouds. Proceedings of the 17th International Conference on Parallel Processing - Volume Part I, 491-502.

6. Gartner. (2007, April 26). Gartner Estimates ICT Industry Accounts for 2 Percent of Global CO2 Emissions. Retrieved from Gartner: http://www.gartner.com/newsroom/id/503867

7. Iosup, A., Dumitrescu, C., Epema, D., Li, H., & Wolters, L. (2006). How are Real Grids Used? The Analysis of Four Grid Traces and Its Implications. Proceedings of the 7th IEEE/ACM International Conference on Grid Computing (pp. 262-269). IEEE Computer Society.

8. Lefèvre, L., & Orgerie, A.-C. (2010). Designing and evaluating an energy efficient Cloud. J. Supercomput., 51(3), 352-373.

9. Liu, L., Wang, H., Liu, X., Jin, X., He, W. B., Wang, Q. B., & Chen, Y. (2009). GreenCloud: a new architecture for green data center. Proceedings of the 6th international conference industry session on Autonomic computing and communications industry session (pp. 29-38). Barcelona, Spain: ACM.

10. Miller, R. (2011, September 8). Google’s Energy Story: High Efficiency, Huge Scale. Retrieved 12

10, 2013, from Data Center Knowlege:

http://www.datacenterknowledge.com/archives/2011/09/08/googles-energy-story-high-efficiency-huge-scale/

(9)

12. Mukherjee, T., Dasgupta, K., Gujar, S., Jung, G., & Lee, H. (2012). An economic model for green cloud. Proceedings of the 10th International Workshop on Middleware for Grids, Clouds and e-Science (pp. 1-6). Montreal, Quebec, Canada: ACM.

13. Qingwen, C., Grosso, P., van der Veldt, K., de Laat, C., Hofman, R., & Bal, H. (2011). Profiling Energy Consumption of VMs for Green Cloud Computing. Dependable, Autonomic and Secure Computing (DASC), 2011 IEEE Ninth International Conference on, (pp. 768-775).

References

Related documents

In this study we employ a multivariate framework that incorporates the features of asymmetries, persistence, and time-varying correlations to examine the volatility dynamics

In this chapter, we present our work on the optimization of data flows and on mapping interactions between architectures in distributed applications. We use our contributions

clinical faculty, the authors designed and implemented a Clinical Nurse Educator Academy to prepare experienced clinicians for new roles as part-time or full-time clinical

Throughout emergency case management at the emergency department of a hospital, readily access to parts of past patient information and to prehospital care data enables

Using a spatial working memory task, Azuma and colleagues found lower activation in a parietal region in patients with 22q11 deletion syndrome compared with healthy controls,

We support the idea of integrated STEM education in a Turkish context in ways that students spend efforts to solve a real-world problem, which requires content knowledge and skills

matrices of the multivariate time series data of solar events as adjacency matrices of labeled graphs, and applying thresholds on edge weights can model the solar flare

The tense morphology is interpreted as temporal anteriority: the eventuality described in the antecedent is localised in the past with respect to the utterance time.. Compare this