Celerity: el futuro de la programación paralela en memoria distribuida

El gran desarrollo y despliegue actual de los clústeres de aceleración (accelerator clusters), debido a la necesidad de aprovechar al máximo la capacidad y eficiencia de la computación en paralelo, hace que se estén investigando y desarrollando una gran variedad de herramientas y modelos de programa...

Full description

Bibliographic Details
Author: Miguel López, Sergio
Format: master thesis
Publication Date:2021
Country:España
Institution:Universidad de Valladolid
Repository:UVaDOC. Repositorio Documental de la Universidad de Valladolid
OAI Identifier:oai:uvadoc.uva.es:10324/57392
Online Access:https://uvadoc.uva.es/handle/10324/57392
Access Level:Open access
Keyword:Celerity
hipSYCL
Programación paralela
Description
Summary:El gran desarrollo y despliegue actual de los clústeres de aceleración (accelerator clusters), debido a la necesidad de aprovechar al máximo la capacidad y eficiencia de la computación en paralelo, hace que se estén investigando y desarrollando una gran variedad de herramientas y modelos de programación para gestionar estos sistemas. Los clústeres de aceleración están formados por multitud de GPUs u otros aceleradores de cómputo localizados en distintos nodos, por lo que entra en juego la gestión de memoria distribuida en dispositivos heterogéneos. La antigua solución de combinar MPI para la memoria distribuida y CUDA, ROCm o una herramienta propia del fabricante para gestionar el paralelismo en los aceleradores es compleja de utilizar y se está quedando desfasada. Por tanto, se necesita un software que combine estos dos modelos de forma eficaz. En este punto aparece Celerity, que se presenta como una API de alto nivel para la programación en memoria distribuida en clústeres de aceleración, cuya característica principal es que consigue reducir enormemente la complejidad de la programación en memoria distribuida en dispositivos heterogéneos sin perder eficiencia. En este trabajo se tratará de analizar en detalle la herramienta Celerity y será comparada con Controller+Hitmap, un software similar desarrollado por el grupo de investigación Trasgo de la Universidad de Valladolid. Con los resultados podremos determinar si Celerity podría llegar a convertirse en el futuro de la programación paralela en memoria distribuida para los clústeres de aceleración.