  The end of Dennard scaling and the slowing of Moore's Law has put the energy
use of datacenters on an unsustainable path. Datacenters are already a
significant fraction of worldwide electricity use, with application demand
scaling at a rapid rate. We argue that substantial reductions in the carbon
intensity of datacenter computing are possible with a software-centric
approach: by making energy and carbon visible to application developers on a
fine-grained basis, by modifying system APIs to make it possible to make
informed trade offs between performance and carbon emissions, and by raising
the level of application programming to allow for flexible use of more energy
efficient means of compute and storage. We also lay out a research agenda for
systems software to reduce the carbon footprint of datacenter computing.
