Chapter 6. Hardware Efficiency

It’s hardware that makes a machine fast. It’s software that makes a fast machine slow.

Craig Bruce1

Hardware efficiency? But wait, I thought this was a book about software. After all, we do mention “software” twice in the title. Yes, that is a fair point, but nonetheless, software runs on hardware, and it is well worth diving into a little deeper. No matter if you are a seasoned hardware geek who first learned to code in assembly or someone who just sees hardware as a means to an end, this chapter has something for you.

Hardware in the context of this book means any device that can be used to run software. That covers quite a wide range of different types of devices. Especially given that some enterprising people even implemented the game Doom on a pregnancy test (thankfully not controlled using the original input method). In this chapter we will focus on the two groups of more widely used hardware devices: servers and consumer devices like phones, desktops, and laptops. We’ll leave the discussion of carbon efficiency in pregnancy tests to someone else.

As we have seen in previous chapters, the main problem we can tackle in data centers (DCs) as green software practitioners is electricity consumption. But for consumer devices, embodied carbon is the greater issue, as it makes up a larger share of the overall carbon footprint of the device over its lifetime. In fact, for smartphones, the manufacturing cost stands for 85%–95% of the annual carbon ...

Get Building Green Software now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.