The Hidden Environmental Cost of Poor Coding Practices in TensorFlow and Keras Applications: A Study on Resource Leaks and Carbon Emissions

· Source: cs.SE updates on arXiv.org · Field: Technology & Digital — Artificial Intelligence & Machine Learning, Software Development & Engineering · Depth: Advanced, extended

Summary

An empirical study quantifies the environmental impact of poor coding practices, specifically resource-leak "smells," in TensorFlow and Keras applications. Researchers investigated two common smells: Improper Model Reuse (IMR) and Unreleased Tensor References (UTR). Controlled experiments, using a CNN trained on CIFAR-10 for 50 epochs on an NVIDIA Tesla T4 GPU, revealed significant increases in energy consumption and CO2 emissions. IMR elevated electricity usage by approximately 31.78% (from a baseline of 0.025646 kWh to 0.033797 kWh) and CO2 emissions by 31.78% (from 0.011608 kg to 0.015297 kg). UTR caused even larger increases, raising electricity consumption by 45.80% (to 0.037393 kWh) and CO2 emissions by 45.77% (to 0.016921 kg). These statistically significant findings, monitored via CodeCarbon, highlight that resource mismanagement measurably degrades ML energy efficiency.

Key takeaway

For MLOps Engineers and ML Scientists deploying TensorFlow/Keras applications, you must prioritize resource lifecycle management. Your seemingly minor coding decisions, like improper model reuse or unreleased tensor references, can increase energy consumption by 32-46% and proportionally raise CO2 emissions. Integrate resource cleanup and energy monitoring into your development and deployment pipelines to mitigate these hidden environmental and operational costs.

Key insights

Resource-leak code smells in ML applications significantly increase energy consumption and CO2 emissions.

Principles

Method

A repeated-measures experiment compared a clean TensorFlow/Keras CNN baseline against independently injected Improper Model Reuse (IMR) and Unreleased Tensor References (UTR) smells. Energy and CO2 were monitored using CodeCarbon across ten runs.

In practice

Topics

Best for: AI Engineer, Research Scientist, AI Scientist, Machine Learning Engineer, MLOps Engineer

Related on AIssential

Open in AIssential →

Editorial summary, takeaway, and curation by AIssential. Original article published by cs.SE updates on arXiv.org.