Ompegas: código relativista optimizado para arquitectura multinúcleo
Autores: Akimova, Elena N.; Misilov, Vladimir E.; Kulikov, Igor M.; Chernykh, Igor G.
Idioma: Inglés
Editor: MDPI
Año: 2022
Acceso abierto
Artículo científico
2022
Ompegas: código relativista optimizado para arquitectura multinúcleo
Categoría
Matemáticas
Subcategoría
Matemáticas generales
Palabras clave
Código hidrodinámico
Flujos astrofísicos
Método numérico
Hidrodinámica gravitatoria
Tecnología OpenMP
Procesadores multinúcleo
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 31
Citaciones: Sin citaciones
El artículo presenta un nuevo código hidrodinámico, OMPEGAS, para la simulación 3D de flujos astrofísicos en arquitecturas de memoria compartida. Proporciona un método numérico para resolver las ecuaciones tridimensionales de la hidrodinámica gravitacional basado en el método de Godunov para resolver el problema de Riemann y la aproximación parabólica por partes con un stencil local. Obtiene un alto orden de precisión y baja disipación de la solución. El código está implementado para procesadores multinúcleo con instrucciones vectoriales utilizando la tecnología OpenMP, la biblioteca Intel SDLT y herramientas de autovectorización del compilador. Se utilizó el problema modelo de simular una explosión estelar para estudiar el código desarrollado. Los experimentos muestran que el código presentado reproduce correctamente el comportamiento de la explosión. Se realizaron experimentos para el problema modelo con un tamaño de malla de en una CPU Intel Core i9-12900K de 16 núcleos para estudiar la eficiencia y el rendimiento del código desarrollado. Al utilizar la autovectorización, logramos un aumento de velocidad de 3.3 veces en comparación con el programa no vectorizado en el procesador con soporte AVX2. Al utilizar la multihilo con OpenMP, logramos un aumento de velocidad de 2.6 veces en un procesador de 16 núcleos en comparación con el programa vectorizado de un solo hilo. El aumento total de velocidad fue de hasta nueve veces.
Descripción
El artículo presenta un nuevo código hidrodinámico, OMPEGAS, para la simulación 3D de flujos astrofísicos en arquitecturas de memoria compartida. Proporciona un método numérico para resolver las ecuaciones tridimensionales de la hidrodinámica gravitacional basado en el método de Godunov para resolver el problema de Riemann y la aproximación parabólica por partes con un stencil local. Obtiene un alto orden de precisión y baja disipación de la solución. El código está implementado para procesadores multinúcleo con instrucciones vectoriales utilizando la tecnología OpenMP, la biblioteca Intel SDLT y herramientas de autovectorización del compilador. Se utilizó el problema modelo de simular una explosión estelar para estudiar el código desarrollado. Los experimentos muestran que el código presentado reproduce correctamente el comportamiento de la explosión. Se realizaron experimentos para el problema modelo con un tamaño de malla de en una CPU Intel Core i9-12900K de 16 núcleos para estudiar la eficiencia y el rendimiento del código desarrollado. Al utilizar la autovectorización, logramos un aumento de velocidad de 3.3 veces en comparación con el programa no vectorizado en el procesador con soporte AVX2. Al utilizar la multihilo con OpenMP, logramos un aumento de velocidad de 2.6 veces en un procesador de 16 núcleos en comparación con el programa vectorizado de un solo hilo. El aumento total de velocidad fue de hasta nueve veces.