La precisión alcanzada en la predicción del tiempo es una combinación de la mejora en el sistema de observaciones, mayor comprensión de los procesos físicos que ocurren en la atmósfera y el crecimiento de la tecnología computacional. Las predicciones del tiempo y del clima son una aplicación perfecta para poner a prueba los límites de la computación. Desde la pionera simulación numérica por ordenador diseñada por Jon von Neumann, muchos han sido los logros alcanzados hasta llegar a las predicciones actuales.
Según los autores, hay dos grandes retos que las predicciones del clima y el tiempo deberán superar. El primero está relacionado con los efectos del cambio climático que requiere de predicciones más precisas para que se puedan contribuir a rápidas tomas de decisiones. En particular, sobre la frecuencia y la intensidad de eventos extremos. En segundo lugar, están los retos de la adquisición masiva de datos (Big data) junto a la desactualización de las leyes computacionales de Moore y Dennard que garantizaban una constante mejora de la arquitectura manteniendo el coste constante.
La adaptación continua del código a la tecnología emergente se remonta a los años 70, cuando los supercomputadores fueron comercialmente alcanzables para los centros de predicción. En los 90 la tecnología sufrió un cambio brusco con la aparición de la paralelización de procesos que permiten aumentar la resolución espacial. Esto hace que varios nodos puedan simular diferentes partes del globo simultáneamente y se comuniquen entre ellos pasándose información sobre, por ejemplo, la evolución de un frente.
La predicciones actuales se realizan para todo el globo dividido en 10 millones de puntos, 100 niveles verticales, 10 variables de pronóstico, inicializados con 100 millones de observaciones al día. Estas simulaciones se realizan en cientos de nodos de Us (Central Processing Units).
Un conjunto de ecuaciones se discretizan en el tiempo y en el espacio para poder resolver los procesos físicos conocidos. Además, usan lo que se conoce como parametrizaciones para resolver procesos como la microfísica de nubes o la turbulencia que a su vez influyen en las variables de pronóstico. Todo ello está escrito en miles de líneas de código, normalmente Fortran.
Este engranaje ha llevado a enormes códigos heredados que son principalmente escritos por científicos. Según Bauer et al. esto ha hecho que tales códigos sólo alcancen el 5% de rendimiento de Us. Este modo de programar los modelos atmosféricos fue suficiente mientras existió un crecimiento exponencial de la tecnología, pero ahora este crecimiento se detiene y el coste de la energía aumenta. Los autores auguran que nos acercamos a un abismo informático que nuestra comunidad debe superar para ofrecer predicciones mejores y más rentables.
Hasta ahora las estrategias para acelerar las predicciones se han basado en la refactorización del código por informáticos, mejorando la memoria y la comunicación con la paralelización. Se han mejorado los flujos de trabajo mediante la superposición de computación y transferencias de datos. Otra estrategia está siendo el uso de tarjetas gráficas o GPU (Graphics Processing Unit) pero requieren la laboriosa reescritura del código. Por ejemplo, el National Oceanic and Atmospheric istration (NOAA) está portando varias arquitecturas para usar las GPUs NVDIA.
Starting soon! Peter Bauers seminar today, Friday 5 March at 10:00 GMT. Peter will present #DestinationEarth, a digital replica of our planet. More information: https://t.co/FAfL2ji3Tg #DigitalTwins #EUGreenDeal @EU_Commission @ESA_EO pic.twitter.com/Zmn82Fg3
— ECMWF (@ECMWF) March 5, 2021
Las evaluaciones recientes muestran que los códigos actuales caen por debajo de los objetivos de rendimiento necesarios para la producción operativa. Para superar estas barreras destacan tres estrategias.