Crédito:Laboratorio Nacional de Oak Ridge
Dado que las arquitecturas de GPU se han convertido en el estándar para la informática científica, Los equipos de aplicaciones han tenido que adaptar sus códigos científicos para que se ejecuten en nuevos sistemas. Incluso los equipos con códigos rediseñados para GPU deben adaptarlos continuamente para nuevas arquitecturas.
Evan Schneider de la Universidad de Princeton, aunque, comenzó a desarrollar su código para GPU desde el principio. En 2012, Schneider enfrentó el desafío de descubrir cómo resolver enormes problemas de astrofísica utilizando grupos de GPU. Lo que comenzó en pequeños grupos en la Universidad de Arizona con su asesor de doctorado, Brant Robertson, actualmente profesor asociado en la Universidad de California, Santa Cruz:finalmente se ejecutó en la supercomputadora Cray XK7 Titan ahora fuera de servicio en Oak Ridge Leadership Computing Facility (OLCF), una instalación para usuarios de la Oficina de Ciencias del Departamento de Energía de EE. UU. ubicada en el Laboratorio Nacional de Oak Ridge del DOE. El código, llamado Cholla, o hidrodinámica computacional en arquitecturas ∥ (paralelas), es ahora uno de los primeros códigos que se reescriben para Frontier, un sistema de exaescala que se implementará en el OLCF en 2021.
"Con Frontier, habrá mucha más potencia disponible en las GPU, ", Dijo Schneider." Realmente ya no tiene sentido hacer casi nada en las CPU, así que mucho de lo que estamos trabajando es conseguir que algunos de nuestros módulos de física adicionales se ejecuten en las GPU ".
El código es uno de los ocho del Centro de preparación para aplicaciones aceleradas (CAAR), un esfuerzo por preparar aplicaciones científicas para Frontier. Cholla se usa para simular sistemas físicos involucrados en la evolución de las galaxias, que es como las galaxias del universo cambian con el tiempo. Las galaxias están formadas no solo por estrellas, sino también por polvo y gas que interactúan para influir en esta evolución. El objetivo del equipo es ejecutar una simulación de la Vía Láctea que incorpore toda la física de los gases que se produce, además de todas las estrellas.
"Necesitamos modelos de alta resolución porque realmente queremos rastrear el gas en todas sus diferentes fases:caliente, frío, caliente, alta velocidad, etcétera, ", Dijo Schneider." Queremos comprender la física del gas que impulsa la formación de estrellas y por qué las galaxias dejan de formar estrellas. Para aprovechar los datos de observación que ya tenemos, necesitamos hacer una simulación extremadamente grande ".
Actualmente, Cholla es compatible con el lenguaje de programación CUDA de NVIDIA para ejecutarse en el sistema IBM AC922 Summit de OLCF, que cuenta con GPU NVIDIA Tesla V100. Ahora, Schneider y su equipo, con el enlace de CAAR Reuben Budiardja en el Grupo de Computación Científica de la OLCF y representantes de AMD y Cray, están usando la Interfaz de Computación Heterogénea para Portabilidad (HIP) para hacer exactamente lo que sugiere su nombre:traducir ciertas partes del código para que sean portátiles para la arquitectura Frontier, que contará con la arquitectura Shasta de Cray y Slingshot Interconnect, así como CPU AMD EPYC y GPU AMD Radeon Instinct. Este proceso de traducción permite a usuarios como Schneider adaptarse a nuevas arquitecturas de GPU como Frontier.
Estudiante de posgrado de Schneider, Orlando Warren, de la Universidad de Pittsburgh, donde Schneider aceptó recientemente un puesto como profesor asistente, ya ha reescrito gran parte del código de la GPU para que sea compatible con HIP. Próximo, el equipo reescribirá las piezas de Cholla que se ejecutan actualmente en las CPU, para que también se puedan ejecutar en GPU.
Robertson está trabajando con su estudiante de posgrado, Bruno Villasenor, que está agregando piezas sustanciales a Cholla, incluidos los cálculos necesarios para resolver la gravedad en la simulación gigante de la Vía Láctea del equipo. Schneider está coordinando el esfuerzo para rediseñar el código, además de agregar lo que ella llama "campanas y silbidos" para refinar aún más las simulaciones necesarias para comprender la formación de estrellas.
Con Frontier, el equipo cree que podrán simular la formación de estrellas con alta resolución.
"Ahora, nos gustaría identificar cómo el gas sale de la galaxia y regresa a ella y cómo eso afecta el proceso de formación de estrellas en la Vía Láctea. Cuanto mayor sea la resolución que podamos obtener, cuanto mejor podamos comprender los procesos físicos del gas, y eso acaba afectando a muchos problemas diferentes de la astrofísica ".
El último paso, Schneider dijo:se asegura de que el nuevo código funcione cuando se transfiere a miles de GPU en lugar de ejecutarse en solo unas pocas, una tarea que requiere un sistema informático de alto rendimiento a gran escala como Summit. El equipo ejecutará pruebas a gran escala en Summit antes de ejecutar el sistema Frontier cuando se implemente el próximo año.