Energy Efficiency in Data Centers and Clouds

 

Demand for computing power has been increasing due to the penetration of information technologies in our daily interactions with the world both at personal and public levels, encompassing business, commerce, education, manufacturing, and communication services. At personal level, the wide-scale presence of online banking, E-commerce, SaaS (Software as a Service), social networking, and so on produce workloads of great diversity and enormous scale. At the same time, computing and information processing requirements of various public organizations and private corporations have also been increasing rapidly. Examples include digital services and functions required by the various industrial sectors, ranging from manufacturing to housing, from transportation to banking. Such a dramatic increase in the computing demand requires a scalable and dependable IT infrastructure comprising of servers, storage, network bandwidth, physical infrastructure, electrical grid, IT personnel and billions of dollars in capital expenditure, and operational cost to name a few.

 

Datacenters are the backbone of today's IT infrastructure. The reach of datacenters spans a broad range of application areas from energy production and distribution, complex weather modeling and prediction, manufacturing, transportation, entertainment, and even social networking. There is a critical need to continue to improve efficiency in all these sectors by accelerated use of computing technologies, which inevitably requires increasing the size and scope of datacenters. However, datacenters themselves are now faced with a major impediment of power consumption. Some reports estimate that the datacenter electricity demand in 2012 was around 31 GW globally, which is equivalent to the electricity demand of around 23 million homes. These reports also predict fast growth rate for electrical energy consumption in datacenters. Power consumption of datacenters will soon match or exceed many other energy-intensive industries such as air transportation.

 

Apart from the total energy consumption, another critical component is the peak power; according to an EPA report, the peak load on the power grid from datacenters is estimated to be approximately 7 GW in 2006 in the United States, equivalent to the output of about 15 base-load power plants. This load is increasing as shipments of high-end servers used in datacenters (e.g., blade servers) are increasing at a 20–30% CAGR.

 

System-wide power management is a huge challenge in datacenters. First, restrictions on availability of power and large power consumption of the IT equipment make the problem of datacenter power management a very difficult one to cope with. Second, the physical infrastructure (e.g., the power backup and distribution system and the computer room air conditioning systems) tends to account for up to one-third of total datacenter power and capital costs. Third, the peak instantaneous power consumption must be controlled. The reason for capping power dissipation in the datacenters is the capacity limitation of the power delivery network in the datacenter facility. Fourth, power budgets in datacenters exist in different granularities: datacenter, cluster, rack, or even servers. A difficulty in the power capping is the distributed nature of power consumption in the datacenter. For example, if there is a power budget for a rack in the datacenter, the problem is how to allocate this budget to different servers and how to control this budget in a distributed fashion. Finally, another goal is to reduce the total power consumption. A big portion of the datacenter operational cost is the cost of electrical energy purchased from the utility companies. A trade-off exists between power consumption and performance of the system and the power manager should consider this trade-off carefully. For example, if the supply voltage level and clock frequency of a CPU are reduced, the average power consumption (and even energy needed to execute a given task) is reduced, but the total computation time is increased.

 

Low utilization of servers in a datacenter is one of the biggest factors in low power efficiency of the datacenter. The most important reason behind having the best energy efficiency at 100% load in servers is the energy non-proportional behavior of the servers. This means that servers with idle status consume a big portion of their peak power consumption. The fact that most of the times, servers are utilized with between 10% and 50% of their peak load and discrete frequent idle times of servers amplify this issue in the datacenters. This fact motivates the design of energy-proportional servers to minimize the overall power consumption. However, due to the non-energy-proportional nature of the current servers, it is prudent from an energy efficiency viewpoint to have as few servers as possible turned on with each active server being highly utilized. In order to decrease the number of active servers, sharing a physical server between several applications is necessary. Virtualization technology creates this opportunity.

 

Virtualization technology creates an application-hosting environment that provides independence between applications that share a physical machine together. Nowadays, computing systems rely heavily on this technology. Virtualization technology provides a new way to improve the power efficiency of the datacenters: consolidation. Consolidation means assigning more than one virtual machine (VM) to a physical server. As a result, some of the servers can be turned off and power consumption of the computing system decreases. Again the technique involves performance-power trade-off. More precisely, if workloads are consolidated on servers, performance of the consolidated VMs may decrease because of physical resource contention (CPU, memory, I/O bandwidth) but the power efficiency will improve because fewer servers will be used to service the VMs.

 

In order to determine the amount of the resources that needs to be allocated to each VM, some performance target needs to be defined for each VM. The IT infrastructure provided by the datacenter owners/operators must meet various service level agreements (SLAs) established with the clients. The SLAs may be resource related (e.g., amount of computing power, memory/storage space, network bandwidth), performance related (e.g., service time or throughput), or even quality of service (QoS) related (24-7 availability, data security, percentage of dropped requests). SLA constraints can be used to determine the limit (minimum and maximum) on the resource requirement of each VM to be able to satisfy the required performance target. On the other hand, in order to minimize the operational cost of the datacenter, energy cost also needs to be considered to decide about optimal resource assignment to VMs.

The scale of the resource management problem in datacenters is very big because a datacenter comprises of thousands to tens of thousands of server machines, working in tandem to provide services to hundreds of thousands clients at the same time. In such a large computing system, energy efficiency can be maximized through system-wide resource allocation and VM consolidation. This is in spite of non-energy-proportional characteristics of current server machines.

 

Resource management solution affects the operational cost and admission control policy in the cloud computing system. Resource management in datacenter is usually handled by three types of resource manager: resource arbiter, power manager, and thermal managers. Resource arbiter or VM manager decides about VM to server assignment and migration and resource allocation. Power manager controls the average and peak power in a distributed or centralized fashion in datacenters and thermal manager keeps the hardware temperature below certain critical point and minimizes the power consumption of the cooling system. In this chapter, a review of the most important work in the area of the resource arbiter and power manager is presented. Moreover, a novel approach to minimize the energy cost of datacenter by increasing the VM consolidation opportunity using VM replication is proposed.

 

Generating multiple copies of a VM and placing them on different servers is one of the basic ways to increase the service reliability. In this approach, only the original copy of the VM handles the requests and the other copies are idle. In this chapter, we propose to exploit all of these copies for servicing the requests. In this scenario, resource provided for each copy of the VM should satisfy SLA requirements and the set of distributed VMs should be able to service all of the incoming requests. For this reason, memory bandwidth (bandwidth) provided for each copy of the VM should be the same as that of the original VM whereas the total CPU cycles provided for these VMs should be greater or equal to the provided CPU cycles for the original VM. Using this approach and an effective VM placement algorithm, which determines the number of VMs and place them on physical machines, the energy cost of the system can be reduced by 20%.


The proposed VM replication and placement algorithm is based on the dynamic programming (DP) and local search methods. The DP method determines the number of copies for each VM and places them on servers and the local search tries to minimize the energy cost by turning off the under-utilized servers.

 

 

Comments

Popular posts from this blog