Ingeniero de CénitS presenta Tesis Doctoral centrada en aumentar el rendimiento de los centros de supercomputación

  • Qui, 22/07/2021 - 17:50
Versión en PDF
Ingeniero de CénitS presenta Tesis Doctoral centrada en aumentar el rendimiento de los centros de supercomputación

Javier Corral, ingeniero de CénitS, ha presentado hoy jueves 22 de julio, la Tesis titulada "Paralelización Automática y Estrategias de Desarrollo de Código Eficiente para Aumentar el Rendimiento en Centros de Supercomputación", para la obtención del Título de Doctor. Esta tesis ha sido dirigida por José Luis González, Director General de COMPUTAEX, y Miguel Ángel Pérez, Profesor de la Universidad de Extremadura. El acto se ha celebrado en el salón de actos de la Escuela Politécnica.

Expertos de múltiples ramas del conocimiento se enfrentan diariamente a multitud de desafíos en proyectos científicos, técnicos o industriales que requieren el uso de la computación de alto rendimiento (HPC, High-Performance Computing) para satisfacer adecuadamente sus necesidades. Sin embargo, el desarrollo de algoritmos y programas que empleen correctamente este tipo de infraestructuras implica un importante conocimiento previo que muchos de estos usuarios no poseen, lo cual dificulta notablemente su labor.

Por ello, Corral propone como uno de los objetivos principales de su tesis doctoral, un transcompilador (compilador source-to-source) para la paralelización automática de códigos secuenciales, con el cual es posible obtener mejores rendimientos y eficiencias en las ejecuciones de supercomputación y escoger una correcta estrategia de planificación para cada código. De esta manera, el transcompilador determina las partes del código que pueden ser paralelizadas y genera automáticamente la correspondiente versión paralela. La realización de transformaciones source-to-source secuencial-paralelo permite además a los usuarios comparar ambos códigos de forma más simple, facilitando el aprendizaje y la mejora de sus capacidades en programación paralela.

Adicionalmente, es habitual que los programadores centren sus esfuerzos en aquellas instrucciones que pueden ser paralelizadas, sin tener en cuenta la eficiencia del resto del código, a menudo ignorando el importante efecto que las partes secuenciales tienen sobre los tiempos de ejecución. El impacto asociado es especialmente significativo en trabajos HPC que tardan varios días en ejecutarse o que forman parte de proyectos que requieren miles de horas de CPU anuales, algo muy común en variedad de investigaciones científicas.

Por ello, Corral evalúa y analiza también diversas técnicas software con el objetivo de conseguir mejoras adicionales en el código y reducir los tiempos de ejecución. En primer lugar, se realiza un detallado análisis del impacto producido al aplicar las distintas estrategias en dispositivos IoT (Internet of Things, Internet de las cosas), debido a su mayor sencillez para realizar todas las mediciones necesarias. Tras comprobar su impacto en la reducción de los tiempos de ejecución y en el ahorro energético, las mismas estrategias son aplicadas sobre infraestructuras HPC. De este modo se demuestra que las técnicas propuestas permiten aumentar la eficiencia de forma fácil y sencilla en ambos entornos, posibilitando que los usuarios obtengan destacables mejoras de rendimiento con cambios menores en sus códigos.

Con todo lo anterior se consigue que incluso usuarios noveles puedan hacer un uso más apropiado y eficiente de los recursos ofrecidos por los centros de supercomputación, disminuyendo los problemas inherentes al aprendizaje de la programación paralela.

Noticias relacionadas: