Analyzing sustainability of Code SLMs serving with runtime engines and execution providers

Background. The rapid growth of Language Models (LMs), particularly in code generation, requires substantial computational resources, raising concerns about energy consumption and environmental impact. Optimizing LMs inference for energy efficiency is crucial, and Small Language Models (SLMs) offer...

Descripción completa

Detalles Bibliográficos
Autor: Durán López, Francisco Javier
Tipo de recurso: tesis de maestría
Fecha de publicación:2025
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/429361
Acceso en línea:https://hdl.handle.net/2117/429361
Access Level:acceso abierto
Palabra clave:Software measurement
Deep learning (Machine learning)
Energy consumption
aprenentatge profund
models de llenguatge
desplegament de models
inferència
IA verda
deep learning
language models
model serving
inference
green AI
Programari--Mesurament
Aprenentatge profund
Energia--Consum
Àrees temàtiques de la UPC::Informàtica::Impacte ambiental
Àrees temàtiques de la UPC::Informàtica::Enginyeria del software
Descripción
Sumario:Background. The rapid growth of Language Models (LMs), particularly in code generation, requires substantial computational resources, raising concerns about energy consumption and environmental impact. Optimizing LMs inference for energy efficiency is crucial, and Small Language Models (SLMs) offer a promising solution to reduce resource demands. Aim. Our goal is to analyze the impact of deep learning runtime engines and execution providers on energy consumption, execution time, and computing-resource utilization from the point of view of software engineers conducting inference in the context of code SLMs. Method. We conducted a technology-oriented, multi-stage experimental pipeline using twelve code generation SLMs to investigate energy consumption, execution time, and computing-resource utilization across the configurations. Results. Significant differences emerged across configurations. CUDA execution provider configurations outperformed CPU execution provider configurations in both energy consumption and execution time. Among the configurations, TORCH paired with CUDA demonstrated the greatest energy efficiency, achieving energy savings from 37.99% up to 89.16% compared to other serving configurations. Similarly, optimized runtime engines like ONNX with the CPU execution provider achieved from 8.98% up to 72.04% energy savings within CPU-based configurations. Also, TORCH paired with CUDA exhibited efficient computing-resource utilization. Conclusions. Serving configuration choice significantly impacts energy efficiency. While further research is needed, we recommend the above configurations best suited to software engineers’ requirements for enhancing serving efficiency in energy and performance.