Creación de un clúster de computación científica basado en FPGAs de bajo coste y consumo

En este trabajo se presenta la construcción de un clúster basado en FPGAs de bajo consumo energético y coste, capaz de ejecutar programas de alta complejidad, en el mismo o en menor tiempo que una estación de trabajo de mucho mayor coste y consumo. En la actualidad ya existen clústeres de este tipo,...

Descripción completa

Detalles Bibliográficos
Autor: Hernández García, Mariano
Tipo de recurso: tesis de maestría
Fecha de publicación:2017
País:España
Repositorio:Docta Complutense
Idioma:español
OAI Identifier:oai:docta.ucm.es:20.500.14352/19809
Acceso en línea:https://hdl.handle.net/20.500.14352/19809
Access Level:acceso abierto
Palabra clave:004.312(043.3)
004.438OpenCL(043.3)
FPGA
Clúster
C
OpenCL
UNIX/Linux
Benchmark
Workstation
Lenguajes de programación
Programación de ordenadores (Informática)
Hardware
1203.23 Lenguajes de Programación
Descripción
Sumario:En este trabajo se presenta la construcción de un clúster basado en FPGAs de bajo consumo energético y coste, capaz de ejecutar programas de alta complejidad, en el mismo o en menor tiempo que una estación de trabajo de mucho mayor coste y consumo. En la actualidad ya existen clústeres de este tipo, pero lo que diferencia al nuestro es que se han utilizado placas con FPGAs de bajas prestaciones y que se ha utilizado OpenCL como lenguaje de programación para acelerar la ejecución de los programas. Estas placas son las DE1-SOC de Altera y se caracterizan, aparte de por su bajo coste y consumo, por ser capaces de ejecutar un sistema operativo de base UNIX/Linux en su hard-core, un procesador ARM Cortex-A9 de dos núcleos. Sin embargo, las imágenes de UNIX/Linux disponibles tanto oficiales como no oficiales, presentan problemas de configuración o limitaciones. Debido a esto, se ha generado una imagen personalizada basada en Debian 8 y se ha instalado en ella el software necesario para poder ejecutar códigos escritos en OpenCL y compilados con el Kit de desarrollo de software de Intel para FPGAs. Se ha elegido esta distribución por ser muy utilizada, robusta y actualizada. Además, se ha realizado una comparativa de los tiempos de ejecución, coste y consumo energético resultado de ejecutar un conjunto de 5 benchmarks, que hemos implementado en C y OpenCL, entre el clúster y una estación de trabajo o Workstation de altas prestaciones. Aunque en algunos casos los tiempos de ejecución de la Workstation han sido menores que los del clúster, el bajo consumo y coste de este último hace que su eficiencia energética sea mucho mejor que la de la Workstation y, por lo tanto, que sea una mejor opción.