How much carbon is your software responsible for? Awareness of power consumption and accountability for it are the first steps in a green development cycle.
In December 2023, delegates from almost 200 countries met in Dubai for the UNโs climate-change conference, COP28, to discuss the pressing need to reduce emissions, as reported by IEEE in this article.
According to the website sustainability scoring toolย Ecograder, and as the authors are quick to point out, the COP28 website produces 3.69 grams of CO2 per page load. Those webpage hits add up. If the site gets 10,000 monthly views for a year, its emissions would be slightly more than a one-way flight from San Francisco to Toronto.
Hereโs something else (this is a geekโs version of the bad news): Electric vehicles (EVs) are dirtier to build but eventually cleaner to drive. Someone who owns a costly electric car produces more carbon for the first 30,000 to 60,000 miles because of the carbon footprint for construction. Remember, coal-burning power plants still power most EV chargers. So, thatโs a bummer.
How green is software?
Although software itself does not release emissions, it runs on data center hardware that does. Information and communications technology, also using software in data centers, is responsible for an estimatedย 2% to 4% of globalย greenhouse gas emissions. The article also points out that by 2040, that number could reachย 14%. This is about as much carbon asย air, land, and sea transport combined.
Here are a few steps we can take:
First, although we are good at writing software, we struggle to create software that optimally utilizes hardware resources. This leads to inefficiencies in power consumption. In the era of cloud computing, we view hardware resources as a massive pool of computing goodness readily available for the taking. No need to think about efficiency or optimization.
Second, there has been no accountability for power consumption. Developers and devops engineers do not have access to metrics demonstrating poorly engineered softwareโs impact on hardware power consumption. In the cloud, this lack of insight is usually worse. Hardware inefficiency costs are hidden since the hardware does not need to be physically purchasedโitโs on demand. Cloud finops may change this situation, but it hasnโt yet.
Finally, we donโt train developers to write efficient code. A nonoptimized versus a highly optimized application could be 500% more efficient in power consumption metrics. ย I have watched this situation deteriorate over time. We had to write efficient code back in the day because the cost and availability of processors, storage, and memory were prohibitive and limited. Nowadays, those things are readily available and inexpensive.
Power-hungry AI will make things worse
Artificial intelligence has become one of the most important technological advancements of our time. We now have solutions that were once deemed impossible. Nevertheless, with all the progress and advancements, an underlying issue needs to be addressed. We must factor in AI systemsโ hardware requirements and power consumption.
Remember that GPUs require more power than CPUs, and thereโs a new dot-com boom and a rise in GPU company valuation. GPU optimization in that arena remains an afterthought, with GPUs being sold as a necessary evil if youโre building AI systems.
As companies work to reduce the carbon footprint of their AI models, a new conversation has arisen regarding sustainable AI practices. Where is the balance between promoting innovation and ensuring ecological responsibility?ย Many enterprises and technology providers give lip service to this topic, but I donโt see much hardware optimization around AI taking place. Yet.
Sustainability pays off
This is a good time to discuss power consumption before we make it worse by using AI. Remember, itโs not only about the environment; there are also financial implications. Anything that requires more power is more expensive.
The shift towards sustainable software practices joins business and sustainability at the hip. I doubt we would be having these conversations if there were not compelling business advantages. Thatโs okay. The combination of ethical principles and economic considerations highlights the significance of sustainability as a key catalyst.
Developing environmentally friendly websites and applications requires a shift in developersโ work ethics. Development should include reevaluating feature necessity, algorithmic efficiency, and code optimization to reduce energy consumption.
We need to instill sustainability principles into the fabric of the software development process. This means we take our software efficiency game to the next level, with improved devops processes and toolchains. Developers must be architects of software that is more efficient and consumes less power.
Adopting greener algorithms is a tactical move that aligns with the broader strategy of reducing energy consumption. Current research underscores that efficient algorithms reduce energy consumption during development and operation with negligible impacts on performance.
On to the specter of AI. To ensure AIโs sustainability, we must take a conscientious approach to training data. โItโs the data, stupid,โ gets to the most power-burning aspect of AI. Optimizing data usage and refining algorithmic processes can decrease energy expenditure; we have known that for decades.
This underscores our need to train developers, AI engineers, and data scientists to build innovative AI systems that generate the least carbon. Organizations must insist on better sustainability practices. Typically, this can come with no impact on delivery time or cost.
Yes, training and tools are additional expenses needed to drive more efficient AI development. You canโt have it both ways. The quest for sustainable software practices takes tools capable of measuring a software solutionโs carbon footprint throughout its life cycle. These metrics offer invaluable insights, guiding developers toward practices that mitigate environmental impacts while ensuring the continued advancement of digital technologies.
There is a growing trend towards green software engineering driven by educational initiatives and certification programs that emphasize sustainability in the software industry. Although weโre very good at identifying problems and devising solutions, weโre not very good at executing those solutions.
I already see a growing number of chief sustainability officer jobs. Call me cynical, but experience tells me the emphasis will be on environmental, social, and governance (ESG) scores and public relations rather than actual performance. We must prioritize the creation of efficient software systems instead of just focusing on solar panels or EV chargers at the office.
Hereโs to hoping we can soon achieve something meaningful with sustainability efforts.


