Green AI: Which Programming Language Consumes the Most?
Niccolò Marini, Leonardo Pampaloni, Filippo Di Martino, Roberto Verdecchia, Enrico Vicario
TL;DR
The paper investigates how programming language choice affects AI energy efficiency during training and inference. It executes a controlled empirical study across five languages, seven algorithms, and three standard datasets, measuring hardware energy consumption. The results show substantial energy differences across languages (up to 54x) and reveal that the algorithm implementation often dominates energy use, sometimes more than language choice. The work provides a replication package and discusses practical trade-offs between energy efficiency and development practicality, offering guidance for pursuing Green AI without drastic changes to development practices.
Abstract
AI is demanding an evergrowing portion of environmental resources. Despite their potential impact on AI environmental sustainability, the role that programming languages play in AI (in)efficiency is to date still unknown. With this study, we aim to understand the impact that programming languages can have on AI environmental sustainability. To achieve our goal, we conduct a controlled empirical experiment by considering five programming languages (C++, Java, Python, MATLAB, and R), seven AI algorithms (KNN, SVC, AdaBoost, decision tree, logistic regression, naive bayses, and random forest), three popular datasets, and the training and inference phases. The collected results show that programming languages have a considerable impact on AI environmental sustainability. Compiled and semi-compiled languages (C++, Java) consistently consume less than interpreted languages (Python, MATLAB, R), which require up to 54x more energy. Some languages are cumulatively more efficient in training, while others in inference. Which programming language consumes the most highly depends on the algorithm considered. Ultimately, algorithm implementation might be the most determining factor in Green AI, regardless of the language used. As conclusion, while making AI more environmentally sustainable is paramount, a trade-off between energy efficiency and implementation ease should always be considered. Green AI can be achieved without the need of completely disrupting the development practices and technologies currently in place.
