logo móvil
Contáctanos

Una plataforma flexible y de propósito general para la computación heterogénea

Autores: Garcia-Hernandez, Jose Juan; Morales-Sandoval, Miguel; Elizondo-Rodríguez, Erick

Idioma: Inglés

Editor: MDPI

Año: 2023

Descargar PDF

Acceso abierto

Artículo científico
2023

Una plataforma flexible y de propósito general para la computación heterogénea


Categoría

Ingeniería y Tecnología

Subcategoría

Ingeniería de Sistemas

Palabras clave

Era de big data
Ciencia de datos
Computación heterogénea
Aceleración de algoritmos
Algoritmos con alta demanda computacional
OpenCL

Licencia

CC BY-SA – Atribución – Compartir Igual

Consultas: 21

Citaciones: Sin citaciones


Descripción
En la era del big data, procesar grandes cantidades de datos impone varios desafíos, principalmente en términos de rendimiento. Las operaciones complejas en ciencia de datos, como el aprendizaje profundo, simulaciones a gran escala y aplicaciones de visualización, pueden consumir una cantidad significativa de tiempo de computación. La computación heterogénea es una alternativa atractiva para la aceleración de algoritmos, utilizando no solo un tipo, sino varios dispositivos informáticos diferentes (CPU, GPU o FPGA) simultáneamente. Acelerar un algoritmo para un dispositivo específico bajo un marco específico, es decir, CUDA/GPU, proporciona una solución con el rendimiento más alto posible a costa de una pérdida en generalidad y requiere un programador experimentado. Por el contrario, la computación heterogénea permite ocultar los detalles relativos al uso simultáneo de diferentes tecnologías para acelerar la computación. Sin embargo, la implementación efectiva de la computación heterogénea todavía requiere dominar el flujo de diseño subyacente. Con el objetivo de llenar esta brecha, en este artículo presentamos una plataforma de computación heterogénea (HCP). En cuanto a sus principales características, esta plataforma permite a los no expertos en computación heterogénea implementar, ejecutar y evaluar algoritmos de alta demanda computacional siguiendo un flujo de diseño semiautomático. Dada la implementación de un algoritmo en C con requisitos de formato mínimos, la plataforma genera automáticamente el código paralelo utilizando un analizador de código, que se adapta para dirigirse a un conjunto de dispositivos informáticos disponibles. Por lo tanto, aunque no se requiere un programador experimentado en computación heterogénea, el proceso puede ejecutarse en los dispositivos informáticos disponibles en la plataforma, ya que no es una solución ad hoc para un dispositivo informático específico. El HCP propuesto se basa en la especificación OpenCL para la interoperabilidad y generalidad. La plataforma se validó y evaluó en términos de generalidad y eficiencia a través de un conjunto de experimentos utilizando los algoritmos del conjunto Polybench/C (versión 3.2) como entrada. Se utilizaron diferentes configuraciones para la plataforma, considerando solo CPUs, solo GPUs y una combinación de ambos. Los resultados revelaron que el HCP propuesto pudo lograr aceleraciones de hasta 270 veces para clases específicas de algoritmos, es decir, algoritmos amigables para la paralelización, mientras que su uso requería casi ninguna experiencia en OpenCL o computación heterogénea por parte del programador/usuario final.

Otros recursos que podrían interesarte

Temas Virtualpro