Skip navigation.
Home

Cutting the Electric Bill for Internet-Scale Systems

Asfandyar Qureshi, Rick Weber, Hari Balakrishnan, John Guttag, Bruce Maggs

Energy expenses are becoming an increasingly important fraction of data center operating costs. At the same time, the energy expense per unit of computation can vary significantly between two different locations. In this paper, we characterize the variation due to fluctuating electricity prices and argue that existing distributed systems should be able to exploit this variation for significant economic gains. Electricity prices exhibit both temporal and geographic variation, due to regional demand differences, transmission inefficiencies, and generation diversity. Starting with historical electricity prices, for twenty nine locations in the US, and network traffic data collected on Akamai’s CDN, we use simulation to quantify the possible economic gains for a realistic workload. Our results imply that existing systems may be able to save millions of dollars a year in electricity costs, by being cognizant of locational computation cost differences.

AttachmentSize
p123.pdf1.05 MB

Comments

The main contribution of the paper is to recognize the fact that price differentials exist in electricity markets and how can large distributed systems (such as Akamai) exploit it to reduce their electricity costs.

Electricity prices can vary hourly in Day-ahead markets and in time span of 5 minutes in Real-time markets. Authors assume that real time prices are known on an hourly basis and show the existence of significant amount of day-to-day volatility in prices for individual cases. But the authors are primarily interested in geographic price differentials i.e. locations where difference in electricity price exists and over time neither of the the side is strictly better than the other (otherwise the static assignment of users to the strictly cheap locations would win). In the data analysis authors found that prices can be correlated at different locations but not for significant time duration.

Since the electricity prices are seen to vary both temporally and geographically, a dynamic request routing mechanism is devised which shifts user load to server locations where energy is cheaper thereby reducing the overall electricity costs for the system. Two constraints are forced upon the dynamic approach: distance threshold and bandwidth constraint; in order to minimize the side-effect of the scheme upon other performance metrics. Both constraints reduce the energy saving capability of the scheme since they reduce the possibilities of locations where a user request can be routed to.

Distance threshold bounds the maximum distance between any user and its assigned server. The authors show that increasing the distance threshold can reduce electricity bills. For me the important question is what kind of performance hit (in terms of delay) is being taken by the end user.
In cases when nearby locations are showing price differentials then the impact upon user delay performance is expected to be less. But in cases where geographically distant locations show price differentials then the impact upon user delay performance is expected to be more.
Which is the dominant case i.e. nearby locations showing price differentials or distant locations showing price differentials?

Bandwidth constraint is imposed to avoid impacting current optimizations of the system which are geared towards reducing bandwidth costs. The authors show that introducing bandwidth constraints reduces the energy savings by almost 30%. For me this raises the question of deployability of the current scheme: Akamai currently pays directly for the bandwidth but not for electricity. Why should it care about electricity costs unless it becomes an integral part of co-location payments?

Enjoyed the presentation and the work is quite novel; especially the in-depth study of the electricity markets.

Very interesting and original paper

This paper shows a new networking constraint no previously analyzed: the temporal and spatial changes of the prices of the electricity and its impact on the electric bill for (Internet) companies. The idea consists of moving the user requests (searches in Google, for example) to those servers placed in areas whose cost for energy is minimal.
Obviously, this is at the expense of an increase of bandwidth consumption; however the authors show that this increase can have a negligible impact (moreover the bandwidth cost is continuously decreasing) in the total cost when comparing to the electric bill. This remains me of another similar issue: currently many companies settle their call centers far from the final user to save money in taxes and salaries.

The case of electric bill is more complicated because the cost (MW/h in $) is not a constant value, it changes through the day (even, in certain percentage, the prices change in real-time: 5 minutes, hourly,…) and changes from day to day. In addition the prices strongly differ from one geographical area to another. Then, the authors show that the prices are not positively correlated between areas. That is an import point and not intuitive for me.

Finally, the last question is to assess that relationship between the energy consumption and workload of a server. From different sources the authors checked that (typically) the ratio between the energy consumption for an idle server and a busy server is 0.7. In addition, it becomes apparent that this ratio will go down in the future.
Bearing in mind these preliminaries, they conduct a trace-drive experiment showing how moving users’ requests (specifically Akamai traces are analyzed) can result in an electric bill reduction larger than $1M (without assuming favourable conditions).

I think that the capacity of join two (relative) different areas of knowledge (that is, networking and economic) is one of the most valuable points of the paper. This requires an important background in both areas which is not usual.
The paper shows some limitations that are pointed out by the authors: operators can buy electricity with long-term contracts; the bounds shown in the papers are derived from real data but sometimes the data sources are not the most accurate option (due to economic and privacy). However the methodology is clearly promising and these experiments could be repeated with more accurate data (by similar companies as Akamai).
From my point of view another issue to consider is if the proposed methodology can be extrapolated to the rest of the world. First, the energy market can be very different in each country. This could limit the methodology to the USA electric market. Second the cost of “producing” energy outside the USA is probability cheaper than in the USA, so it can be interesting to evaluate the cost of moving requests to other countries.

Interesting idea

The paper presents an interesting idea to reduce the energy costs of data centers. Based on the observation of significant differences in local energy prices, the authors propose to dynamically direct computation load to locations of low energy costs. Hence, the paper is characterized by presenting a simple yet intriguing approach that tackles an actual real-world problem. A thorough and truly interesting in-depth analysis of a comprehensive data-set substantiate the authors' claims.

From a technical perspective, the approach stands out due to its simplicity that allows a relatively straightforward integration with existing distributed systems. However, in order to apply it to the real-world, current billing practices need to be changed to allow data center operators direct access to the energy wholesale market. In this context, it remains an interesting economical question - at least for me - whether operators actually prefer dynamic pricing over static contracts that enable long term planning.

The authors conduct a quite detailed analysis of a large data set to show the viability of their idea. Since this analysis is trace driven, the authors assume that the relocation of computation load does not significantly influence prices. This might not be true: current data centers often reside in rural regions and hence exert a influence on the overall local energy consumption. As a result, prices might fluctuate more extremely than today, causing frequent relocations of computation load.

Besides my enthusiasm for the paper and the idea as such, I have the bad feeling that cutting the energy cost in terms of dollars follows a wrong direction. The actual problem we are facing today is the enormous energy consumption of the IT infrastructure, but the presented approach merely shifts the problem somewhere else. Instead, it should be our foremost goal to reduce the energy consumption of networking equipment in terms of joules for ecological _and_ economical reasons.

Concluding, the paper presents an intriguing idea and an interesting analysis. Hence, I very much enjoyed reading it. However, in the end it is up to the operators to asses the real-world applicability of the presented approach.

Some comments regarding the paper

This paper presents interesting approach for operators of large, distributed networked systems. It potentially allows them to save on electricity cost. It utilizes the fact that usually even in one country electricity prices exhibit temporal and geographic variations. By introducing energy cost-aware routing company electric bills may be reduced to some extent. Proposed solution is proven to be useful based on real-world trace-driven simulations. Paper gives very good overview of complexity of electricity market in U.S. and shows how its inconsistence may be exploited to reduce electricity bills.

However, for me, the biggest drawback of this paper is to propose a solution aimed only at reducing electricity cost without considering overall increase in energy usage that energy cost-aware routing may introduce (due to longer clients communication paths). Authors admit that overall energy consumption may rise and it is a pity that this has not been investigated further and that experimental results do not evaluate the cost of potential increase in energy consumption. If the company would have electricity cost savings and there may be increase in overall energy consumption at the same time the question arises: who will pay for it? Surely, it will not be the company which uses energy cost-aware routing (rich get richer...) but somebody else e.g. ISP or some other entities in the network. In my opinion, this solution gives companies opportunity to move their expenses to others and it is unfair (not mention that it is not environmental friendly).

I think that reducing energy usage should be "the base" for similar future solutions, so they would not only provide economic gains for large companies but also would be beneficial for the environment. In my opinion, if we use solutions which separate profits from energy savings solutions from the environmental impact that they may have, environmental issues will be always marginalized and left out.

nice paper

IMHO this is a very good paper that opens novel perspectives on cost-effective data-centers, distributed at geographical scales. The base idea is very simple: exploit cloud computing for dynamically moving computation load toward clusters (i.e., locations) where the energy cost is lower. This obviously may have multiple impacts, outlined by authors, on both energy markets and network layers, which can be investigated in future works in more details. However, this approach is applicable only by large and distributed organizations, and only where the energy fees are dynamical.
On the other side, my concerns mainly regard two aspects:
(i) the model and the optimization procedure are described in a very intuitive way, but some more details are needed to better understand this work;
(ii) depending on the specific server application, moving computation between different locations (especially if geographically far) may require data synchronization. If the amount of data to synchronize is not negligible, we have to take into account further performance deteriorations, as well as additional energy consumptions both from the network layer (e.g., routers, switches, …), and servers (that have to sync their databases).