Ecovisor A Virtual Energy System for Carbon-Efficient Applications Abel Souza Noman Bashir Jorge Murillo Walid Hanafy Qianlin Liang David Irwin and Prashant Shenoy

2025-05-04 0 0 2.79MB 15 页 10玖币
侵权投诉
Ecovisor: A Virtual Energy System for Carbon-Efficient Applications*
Abel Souza, Noman Bashir, Jorge Murillo, Walid Hanafy, Qianlin Liang, David Irwin, and
Prashant Shenoy
University of Massachusetts Amherst
Abstract
Cloud platforms’ rapid growth is raising significant
concerns about their carbon emissions. To reduce emis-
sions, future cloud platforms will need to increase their
reliance on renewable energy sources, such as solar and
wind, which have zero emissions but are highly unreli-
able. Unfortunately, today’s energy systems effectively
mask this unreliability in hardware, which prevents appli-
cations from optimizing their carbon-efficiency, or work
done per kilogram of carbon emitted. To address this
problem, we design an “ecovisor,” which virtualizes the
energy system and exposes software-defined control of it
to applications. An ecovisor enables each application to
handle clean energy’s unreliability in software based on
its own specific requirements. We implement a small-scale
ecovisor prototype that virtualizes a physical energy sys-
tem to enable software-based application-level i) visibility
into variable grid carbon-intensity and renewable gener-
ation and ii) control of server power usage and battery
charging/discharging. We evaluate the ecovisor approach
by showing how multiple applications can concurrently
exercise their virtual energy system in different ways to
better optimize carbon-efficiency based on their specific
requirements compared to a general system-wide policy.
1. Introduction
Cloud platforms are growing exponentially, and have been
for some time, with a recent analysis estimating a 6
×
in-
crease in their capacity from 2010-2018, or roughly a
22.4% increase per year [
51
]. This hyperscale growth is
being driven by the continual development of new and
useful, but often computationally-intensive, applications,
particularly in artificial intelligence (AI) [
22
]. As they
have grown, cloud platforms have aggressively optimized
their energy-efficiency, e.g., by reducing their power us-
age effectiveness (PUE)
1
to near the optimal value of
1
[
11
,
18
], to mitigate large increases in their energy con-
sumption and cost.
However, further improving energy-efficiency is be-
coming increasingly challenging, as it is already highly
optimized. Thus, continued growth in cloud capacity
will likely result in much larger increases in energy con-
sumption moving forward. Of course, this energy growth
*Paper to appear at ASPLOS 2023.
1The PUE is the ratio of total data center power to server power.
is also increasing cloud platforms’ carbon and green-
house gas (GHG) emissions, which are causing climate
change [
40
,
52
]. The negative environmental effects of the
cloud’s hyperscaler growth have begun to receive signifi-
cant attention. As a result, all the major cloud providers
have announced aggressive goals for reducing, and ul-
timately eliminating, their platforms’ carbon emissions
over the next decade, while acknowledging that many of
the technologies necessary to achieve these sustainability
goals have yet to be developed [1,20,31,54,65].
Reducing cloud platforms’ carbon emissions will re-
quire them to power their cloud and edge data centers
using cleaner “lower-carbon” energy sources. A distin-
guishing characteristic of clean energy is its unreliability:
it is intermittent and not available in unlimited quantities
at any single location all the time. Notably, clean energy’s
unreliability manifests itself in two distinct ways within
our current energy system: i) the unreliability of renew-
able power generation and ii) the volatility of grid power’s
carbon-intensity. In the former case, the power generated
by zero-carbon renewable energy sources, primarily solar
and wind, at any location is unreliable because it varies
based on changing environmental conditions. In the latter
case, the carbon-intensity of grid power — in kg
·
CO
2
equivalent per watt (W) — is volatile because it varies
based on the carbon emissions of the different types of
generators the grid uses to satisfy its variable demand. As
we discuss, both forms of unreliability are important to
consider in reducing cloud platforms’ carbon emissions.
Compared to other industries, computing is uniquely
well-positioned to reduce its carbon emissions by tran-
sitioning to cleaner energy sources, despite their unreli-
ability, for numerous reasons. Most importantly, com-
putation often has significant spatial, temporal, and per-
formance flexibility, which enables execution location,
time, and intensity shifting to better align with the avail-
ability of low-carbon grid power and zero-carbon renew-
able power [
33
,
34
,
62
]. In addition, computation can
also leverage numerous software-based fault-tolerance
techniques, including checkpointing, replication, and re-
computation, to continue execution despite unexpected
variations in the availability of low-carbon energy, which
may require throttling or shutting down servers [64].
Unfortunately, today’s cloud applications cannot lever-
age the unique combination of advantages above to opti-
mize their carbon-efficiency, or work done per kilogram
arXiv:2210.04951v1 [cs.OS] 10 Oct 2022
(kg) of carbon (and other GHGs) emitted, because current
energy systems effectively mask clean energy’s unrelia-
bility from them in hardware. That is, energy systems
have traditionally exposed a reliability abstraction – the
abstraction of a reliable supply of power on demand up to
some maximum – to electrical devices, including servers,
via their electrical socket interface. In many cases, the
energy system now includes a connection to not only the
grid, but also an increasingly rich local energy system
that may include substantial energy storage, e.g., batter-
ies [
56
], and co-located renewable energy sources, e.g.,
wind and solar [
44
]. Since energy systems hide their
increasing complexity behind the reliability abstraction,
they provide applications no control of, or visibility into,
the characteristics of their energy supply, i.e., its con-
sumption, generation, or carbon emissions. Thus, appli-
cations cannot optimize carbon-efficiency by regulating
their power usage to respond to changes in grid power’s
carbon-intensity and renewable power’s availability.
To address the problem, this paper presents the design
and implementation of an ecovisor—a software system
that exposes software-defined control of a virtual energy
system directly to applications. An ecovisor is akin to a
hypervisor but virtualizes the energy system of comput-
ing infrastructure instead of virtualizing the computing
resources of a single server. Importantly, an ecovisor en-
ables applications to handle clean energy’s unreliability
within their software stack based on their own specific
characteristics, performance requirements, and sustain-
ability goals by leveraging one or more dimensions of
software flexibility and software-based fault-tolerance.
Ecovisors also enable applications to exercise software-
based control of their virtual energy system to mitigate
clean energy’s unreliability. Specifically, instead of tem-
porally or spatially shifting their computing workload,
applications can control their virtual battery to temporally
shift their clean energy usage—by storing renewable or
low-carbon grid energy when it is available for later use.
In some sense, our approach extends the end-to-end
principle [
61
] to the energy system by i) recognizing that
the energy system’s current reliability abstraction prevents
designing carbon-efficient applications, and ii) address-
ing the problem by pushing control of the energy system
from hardware into software. Our approach is also in-
spired by the exokernel argument from operating systems
that advocates delegating resource management to appli-
cations [
30
,
42
]. Our ecovisor extends this approach by
delegating not only resource management to applications,
but also the energy (and carbon) that powers those re-
sources. Our hypothesis is that exposing software-defined
visibility and control of a virtualized energy system en-
ables applications to better optimize carbon-efficiency
based on their specific characteristics and requirements
compared to a general system policy. In evaluating our
hypothesis, this paper makes the following contributions.
Virtualizing the Energy System.
We present our ecov-
isor design, which virtualizes a physical energy system
to enable software-based control of server power con-
sumption and battery charging/discharging, as well as
visibility into variable grid carbon-intensity and renew-
able generation. Our ecovisor exposes a software API to
applications that enable them to control their use of power
to respond to uncontrollable variations in grid energy’s
carbon-intensity and renewable energy’s availability.
Carbon-Efficiency Optimizations.
We present multi-
ple case studies showing how a range of different ap-
plications can use the ecovisor API to optimize their
carbon-efficiency. Our case studies highlight two im-
portant concepts including: i) different applications use
their virtual energy system in different ways to opti-
mize carbon-efficiency, and ii) application-specific poli-
cies can better optimize carbon-efficiency compared to
general one-size-fits-all system policies. While optimiz-
ing energy-efficiency has been well-studied in comput-
ing, there has been little research on optimizing carbon-
efficiency, which is fundamentally different and the only
metric that really matters for addressing climate change.
Implementation and Evaluation.
We implement a
small-scale ecovisor prototype on a cluster of mi-
croservers that exposes a virtual grid connection, solar
array, and batteries to applications. We evaluate our pro-
totype’s flexibility by concurrently executing the case
study applications above, and showing that optimizing
their carbon-efficiency on a shared infrastructure requires
application-specific policies. For example, an interactive
web service may use carbon budgeting to maintain a strict
latency SLO as carbon-intensity varies, while a parallel
batch job might instead adjust its degree of parallelism.
2. Motivation and Background
Motivation
. Sustainable computing focuses on the design
and operation of carbon-efficient computing infrastructure
and applications. This paper focuses on reducing Scope 2
operational carbon (and other GHG) emissions from using
electricity [
12
], which represents a significant fraction of
cloud platforms’ emissions. Optimizing Scope 1 direct
emissions and Scope 3 embodied emissions are outside
our scope. While these other classes of emissions are also
important, cloud platforms have few Scope 1 emissions,
and have no direct control over their Scope 3 emissions.
While cloud platforms have long focused on optimizing
energy-efficiency, optimizing carbon-efficiency is funda-
mentally different. To illustrate, consider that a highly
energy-efficient system can be highly carbon-inefficient if
its grid-supplied power derives from burning fossil fuels,
while a highly energy-inefficient system can be highly
carbon-efficient if its power derives solely from zero-
carbon renewable energy. As this trivial example shows,
2
a cloud platform’s carbon-efficiency depends, in part, on
the carbon-intensity of its energy supply, which varies
widely over time based on variations in both grid power’s
carbon-intensity and local renewable power’s availability.
Since modifying a cloud platform’s operations to adapt
to variations in carbon-intensity, e.g., by throttling work-
loads when carbon-intensity is high, is challenging, cloud
providers have largely focused on transparently reducing
their net carbon emissions using carbon offsets. Such off-
sets are an accounting mechanism that enables offsetting
the direct use of carbon-intensive energy by purchasing
zero-carbon renewable energy generated at another time
and location [
43
,
58
]. Carbon offsets are attractive be-
cause they do not require complex operational changes
to reduce net carbon emissions. Many prominent tech-
nology companies have eliminated their net carbon emis-
sions [
1
,
31
,
54
,
65
], which they often refer to as running
on “100% renewable energy. Unfortunately, carbon off-
sets do not reduce direct carbon emissions, and become
increasingly less effective as carbon emissions decrease,
as there is less carbon left to offset. As a result, elimi-
nating absolute carbon emissions will ultimately require
cloud platforms to change their operations to reduce their
direct carbon emissions by better aligning their computing
load with when and where low-carbon energy is available.
Reducing direct carbon emissions is challenging largely
because it introduces a new constraint that requires
voluntarily making difficult tradeoffs between perfor-
mance/availability, cost, and carbon emissions. In gen-
eral, modifying design and operations to reduce direct
carbon emissions decreases performance/availability and
also increases cost, as energy prices do not (yet) incor-
porate the cost of carbon’s negative externalities to the
environment. Importantly, the optimal tradeoff between
performance/availability, cost, and carbon emissions dif-
fers across applications and users. As we show in §5,
the policies for reducing the carbon emissions of delay-
tolerant batch applications are significantly different from
those for interactive web services that must maintain a
strict latency Service Level Objective (SLO). More gen-
erally, though, cloud users, i.e., companies, have widely
different goals, strategies, and tolerances for reducing
carbon (at the expense of increased cost and lower perfor-
mance/availability), which cloud platforms do not know.
As a result, cloud platforms are not well-positioned to
manage carbon emissions at the system-level on behalf of
their users, which motivates our ecovisor’s approach of
exposing energy and carbon management to applications.
The motivation for our ecovisor’s application-level con-
trol of carbon is analogous to that for cloud auto-scaling:
all cloud platforms support elastic auto-scaling that en-
ables applications to horizontally or vertically scale their
resources in response to variations in their workload’s in-
tensity [
3
,
14
]. These auto-scaling policies are application-
specific for similar reasons as above, i.e., differing appli-
cation requirements and user tradeoffs between cost and
performance/availability. Our ecovisor’s API, discussed
in §3, enables similar “auto-scaling” but in response to
variations in grid power’s carbon-intensity and local re-
newable energy’s availability. A simple evolutionary path
to enabling such “carbon-scaling” using an ecovisor is
to augment existing cloud auto-scaling APIs. For exam-
ple, existing APIs, such as Amazon CloudWatch [
37
] and
Azure Monitor [
4
], already expose visibility into platform
resource usage, and could easily be extended to include
power and carbon information. In this case, cloud plat-
forms would “delegate” carbon-scaling to applications
just as they currently delegate auto-scaling resources.
While the ecovisor approach could apply to existing
cloud platforms, especially those hosted at datacenters
with substantial co-located renewables [
44
] and energy
storage [
59
], there is currently no financial incentive to
reduce carbon. This is a social problem, not a technical
one. In the end, to halt climate change, government poli-
cies will likely be necessary to create strong incentives for
monitoring and reducing carbon emissions, either directly,
e.g., via carbon caps, or indirectly, e.g., via carbon pricing.
Nevertheless, cloud platforms have already begun to ex-
pose visibility into their carbon emissions [
10
], driven by
their customers’ increasing desire to measure and report
carbon emissions data. This combination of customer
demand and government policy is likely to incentivize
future cloud platforms to adopt ecovisor-like mechanisms
for measuring and controlling carbon emissions.
Background.
Our work assumes a datacenter’s physi-
cal energy system connects to up to three distinct power
sources: the electric grid, local batteries (or other forms
of energy storage), and local renewable generation, such
as solar or wind. The power supplied to servers (and
other computing equipment) is a mix of these three power
sources. Not all facilities will have connections to all
three power sources, and the capacity of each source may
vary. For example, many large cloud data centers may not
have local renewables, while smaller edge sites might not
require a grid connection, i.e., if they have enough local
renewables and battery capacity to be self-powered [34].
An ecovisor requires software-defined monitoring and
control of both server power and the physical energy sys-
tem, i.e., power’s supply, demand, and carbon emissions.
Monitoring Power. An ecovisor must be capable of
monitoring each energy source’s power generation and
consumption. Energy system components commonly ex-
pose power monitoring via programmatic APIs. For ex-
ample, battery charge controllers, such as Tesla’s Pow-
erwall, support querying a battery’s energy level, and its
charge/discharge rate from the grid and solar [
15
], while
solar inverters support querying current and historical so-
lar power generation [
15
]. Our ecovisor builds on these
3
摘要:

Ecovisor:AVirtualEnergySystemforCarbon-EfcientApplications*AbelSouza,NomanBashir,JorgeMurillo,WalidHanafy,QianlinLiang,DavidIrwin,andPrashantShenoyUniversityofMassachusettsAmherstAbstractCloudplatforms'rapidgrowthisraisingsignicantconcernsabouttheircarbonemissions.Toreduceemis-sions,futurecloudpla...

展开>> 收起<<
Ecovisor A Virtual Energy System for Carbon-Efficient Applications Abel Souza Noman Bashir Jorge Murillo Walid Hanafy Qianlin Liang David Irwin and Prashant Shenoy.pdf

共15页,预览3页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
分类:图书资源 价格:10玖币 属性:15 页 大小:2.79MB 格式:PDF 时间:2025-05-04

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 15
客服
关注