[ES] Este Trabajo de Fin de Grado tiene como objetivo el desarrollo de soporte de arquitecturas
heterogéneas con programación en OpenCL para un soporte eficiente del cálculo
en dos aplicaciones actuales.
La primera ...[+]
[ES] Este Trabajo de Fin de Grado tiene como objetivo el desarrollo de soporte de arquitecturas
heterogéneas con programación en OpenCL para un soporte eficiente del cálculo
en dos aplicaciones actuales.
La primera aplicación es una aplicación para el cálculo dinámico de estructuras de
puentes ferroviarios donde, además de la programación de arquitecturas heterogéneas,
se ha optimizado la aplicación para su ejecución en un sistema distribuido, empleado
para ello una herramienta de memoria distribuida mediante paso de mensajes. Con dicha
herramienta se ha construido un sistema de comunicación que ha permitido la ejecución
paralela de la aplicación, al objeto de obtener una mejora en el coste temporal del cálculo.
El trabajo realizado sobre la segunda aplicación ha consistido en una extensión de la
funcionalidad en el cálculo del entrenamiento de redes neuronales para permitir la ejecución
de la misma en plataformas heterogéneas. En concreto hemos utilizado la plataforma
GPU para llevar a cabo las ejecuciones.
En ambos casos se ha obtenido una mejora sustancial del tiempo de ejecución al utilizar
dispositivos GPU de alto rendimiento. La implementación realizada es compatible y
puede ser utilizada en otros tipos de dispositivos heterogéneos, principalmente FPGAs.
[-]
[EN] In this project we have developed support for heterogeneous architectures by using
OpenCL programming and to provide efficient computing capabilities to two key representative
applications.
The first application ...[+]
[EN] In this project we have developed support for heterogeneous architectures by using
OpenCL programming and to provide efficient computing capabilities to two key representative
applications.
The first application targets modeling of train bridges. For this application, we additionally
provide an optimization to enable distributed computing of such application,
using a distributed memory approach and message passing support through MPI. This
enables the application to speedup the simulation process of the bridgea in a cluster of
heterogeneous devices.
The second application targets neural network training and inference. In such application
we have coded all the necesary funcionality to support OpenCL programming of
GPUs for the improvement of the application (compared to CPU).
In both applications we have achieved remarkable execution time speedups by using
high-performance GPUs. The provided implementation is compatible with other heterogeneous
sysems, such as FPGAs.
[-]
[CA] Aquest Treball de Fi de Grau té com a objectiu el desenvolupament de suport d’arquitectures heterogènies amb programació en OpenCL per a un suport eficient del càlcul
en dos aplicacions actuals
La primera aplicació ...[+]
[CA] Aquest Treball de Fi de Grau té com a objectiu el desenvolupament de suport d’arquitectures heterogènies amb programació en OpenCL per a un suport eficient del càlcul
en dos aplicacions actuals
La primera aplicació és una aplicació per al càlcul dinàmic d’estructures de ponts
ferroviaris on, a més de la programació d’arquitectures heterogènies, s’ha optimitzat l’aplicació per a la seua execució en un sistema distribuït, empleat per a això una ferramenta
de memòria distribuïda per mitjà de pas de missatges. Amb la dita ferramenta s’ha construït un sistema de comunicació que ha permés l’execució paral·lela de l’aplicació, a fi
d’obtindre una millora en el cost temporal del càlcul.
El treball realitzat sobre la segona aplicació ha consistit en una extensió de la funcionalitat en el càlcul de l’entrenament de xarxes neuronals per a permetre l’execució
d’aquesta en plataformes heterogènies. En concret hem utilitzat la plataforma GPU per a
dur a terme les execucions.
En ambdós casos s’ha obtingut una millora substancial del temps d’execució a l’utilitzar dispositius GPU d’alt rendiment. La implementació realitzada és compatible i pot
ser utilitzada en altres tipus de dispositius heterogenis, principalment FPGAs.
[-]
|