  There has been a significant societal push towards sustainable practices,
including in computing. Modern interactive workloads such as geo-distributed
web-services exhibit various spatiotemporal and performance flexibility,
enabling the possibility to adapt the location, time, and intensity of
processing to align with the availability of renewable and low-carbon energy.
An example is a web application hosted across multiple cloud regions, each with
varying carbon intensity based on their local electricity mix. Distributed
load-balancing enables the exploitation of low-carbon energy through load
migration across regions, reducing web applications carbon footprint. In this
paper, we present CASPER, a carbon-aware scheduling and provisioning system
that primarily minimizes the carbon footprint of distributed web services while
also respecting their Service Level Objectives (SLO). We formulate CASPER as an
multi-objective optimization problem that considers both the variable carbon
intensity and latency constraints of the network. Our evaluation reveals the
significant potential of CASPER in achieving substantial reductions in carbon
emissions. Compared to baseline methods, CASPER demonstrates improvements of up
to 70% with no latency performance degradation.
