Módulo 02 // Unidad 03

Los principios del software sostenible

Eficiencia de energía y de hardware, y consciencia del carbono según la Green Software Foundation

Unidad para alumnos del curso

Comprobando tu sesión…

Inicia sesión con la cuenta de Google con la que estás matriculado para ver esta unidad.

Esa cuenta no tiene acceso a este curso. Prueba con otra.

No se ha podido cargar el inicio de sesión de Google. Comprueba la conexión o si algún bloqueador lo impide, y recarga la página.

Ya sabes dónde consume una web y en qué fases se decide su huella. La siguiente pregunta es qué hacer al respecto. La Green Software Foundation ha resumido la respuesta en unos pocos principios que sirven para cualquier lenguaje, framework o proveedor. Su idea central cabe en una frase: sólo hay tres formas de reducir las emisiones de un software.

1 // La Green Software Foundation

La Green Software Foundation (GSF) es una organización sin ánimo de lucro creada en 2021, dentro de la Linux Foundation, por varias empresas tecnológicas y consultoras, entre ellas Microsoft, GitHub, Accenture y Thoughtworks. Hoy reúne a decenas de organizaciones.

Su objetivo es que el software sostenible deje de ser una iniciativa aislada y se convierta en una disciplina de ingeniería, con principios comunes, formación y estándares. Entre lo que publica:

  • Un curso gratuito de introducción, Green Software Practitioner, del que salen los principios de esta unidad.
  • La especificación SCI para medir la intensidad de carbono del software, que verás en la próxima unidad.
  • Herramientas abiertas, como un kit para programar software consciente del carbono.

Que una fundación la impulsen grandes tecnológicas no invalida sus principios, pero conviene tenerlo presente: esas mismas empresas son grandes consumidoras de energía. Los principios son sólidos; los anuncios de cada empresa hay que leerlos con espíritu crítico.

2 // Las tres palancas

La GSF parte de una observación sencilla: las emisiones de un software salen de la energía que consume y del hardware que necesita. Así que sólo se pueden reducir de tres maneras:

LAS TRES PALANCAS DEL SOFTWARE SOSTENIBLE EFICIENCIA DE HARDWARE menos equipos · más años EFICIENCIA ENERGÉTICA mismo trabajo, menos kWh CONSCIENCIA DEL CARBONO kWh más limpios carbono incorporado ↓ carbono operativo ↓ cuánto consumes · qué consumes EFICIENCIA DE CARBONO · menos CO₂e por trabajo útil base de todo: MEDIR, antes y después de cada cambio
Las tres palancas y el tipo de carbono sobre el que actúa cada una. Las dos primeras reducen cuánto se consume; la tercera cambia qué electricidad se consume.
Palanca Idea Actúa sobre
Eficiencia energética Hacer el mismo trabajo con menos electricidad Carbono operativo
Eficiencia de hardware Hacer el mismo trabajo con menos equipos, o alargar su vida Carbono incorporado
Consciencia del carbono Consumir más cuando la electricidad es limpia y menos cuando es sucia Carbono operativo

Por encima de las tres, la GSF insiste en otro principio, la eficiencia de carbono: el objetivo final no es ahorrar vatios o servidores por sí mismos, sino emitir la menor cantidad de carbono por unidad de trabajo útil. Y añade uno más, la medición: lo que no se mide no se puede mejorar.

3 // Hacer más con menos hardware

La palanca del hardware tiene un matiz importante, la proporcionalidad energética. En un mundo ideal, un servidor al 10 % de carga consumiría el 10 % de su potencia máxima. En la práctica no es así: un servidor encendido consume una parte importante de su energía aunque no haga nada, sólo por estar en marcha.

Eso tiene una consecuencia poco intuitiva: un servidor bien aprovechado es más eficiente que varios medio vacíos. Por cada unidad de trabajo, el consumo base se reparte entre más operaciones útiles, y además se fabrican menos máquinas.

Supón servidores que consumen 100 W en reposo y 200 W a plena carga, con un consumo que crece de forma lineal entre ambos puntos. Hay que atender una carga equivalente al 40 % de una máquina.

  1. Opción A, dos servidores al 20 %: cada uno consume 100 + 0,2 × 100 = 120 W. Total: 240 W.
  2. Opción B, un servidor al 40 %: 100 + 0,4 × 100 = 140 W.
  3. Ahorro: 100 W, es decir, un 42 % menos, y un servidor menos que fabricar.
El mismo trabajo cuesta 240 W o 140 W según cómo se reparta. Los contenedores, la consolidación y el escalado automático, que verás en el módulo 5, son formas de acercarse a la opción B sin quedarse sin margen para los picos.

Alargar la vida útil del hardware también es eficiencia de hardware: el carbono incorporado de un equipo se reparte entre más años de servicio.

4 // Consciencia del carbono

En el módulo 1 viste que la intensidad de carbono de la red eléctrica cambia de un sitio a otro y de una hora a otra. En España, un mediodía soleado y con viento puede tener una electricidad mucho más limpia que una noche en calma. El software consciente del carbono aprovecha esa variación de tres formas:

  • Desplazar en el tiempo: ejecutar lo que puede esperar cuando la red está más limpia. Copias de seguridad, entrenamientos de modelos, generación de informes, compilaciones pesadas.
  • Desplazar en el espacio: ejecutar el trabajo en una región cuya red sea más limpia, si la latencia y la normativa de datos lo permiten.
  • Moldear la demanda: ajustar cuánto se hace según la red. Por ejemplo, bajar por defecto la calidad de un vídeo o posponer funciones no esenciales cuando la electricidad es más sucia.

Para saber cómo está la red en cada momento existen servicios que publican la intensidad de carbono en tiempo real y sus previsiones, como Electricity Maps o, para España, los datos abiertos de Red Eléctrica.

Menos energía, menos hardware y energía más limpia: cualquier optimización que hagas encaja en una de las tres palancas. Cuando dudes de si un cambio ayuda, pregúntate sobre cuál actúa y si empeora alguna de las otras dos.

Autoevaluación

Según la Green Software Foundation, ¿cuáles son las tres únicas formas de reducir las emisiones de un software?
Usar menos hardware, usar menos energía y usar la energía de forma más inteligente. La primera reduce el carbono incorporado; la segunda, el operativo; la tercera consiste en consumir cuando y donde la electricidad es más limpia. Cualquier técnica concreta de optimización acaba cayendo en una de las tres.
¿Por qué dos servidores al 20 % de carga suelen ser menos eficientes que uno al 40 %?
Porque un servidor encendido consume una parte importante de su energía aunque no haga nada. Ese consumo base se paga dos veces con dos máquinas, y además hay que fabricar dos. Concentrar la carga aprovecha mejor cada vatio y cada servidor fabricado, siempre que se deje margen para los picos.
¿Qué significa que un software sea «consciente del carbono»?
Que adapta cuándo, dónde o cuánto trabaja según lo limpia que sea la electricidad disponible. Una tarea que puede esperar se ejecuta cuando hay más renovables en la red, o en una región con una red más limpia, o reduce su calidad cuando la red está más sucia. Así emite menos haciendo el mismo trabajo.