Auto-generación de núcleos computacionales para redes neuronales sobre GPUs ; Auto-generation of computational kernels for neural networks on GPUs ; Acte-generació de nuclis computacionals per a xarxes neuronals sobre GPUs
Universitat Politècnica de València, 2023
Online
Hochschulschrift
Zugriff:
[ES] La adopción de las redes neuronales en prácticamente todos los ámbitos científicos está propiciando su uso en una amplia variedad de dispositivos. Estos dispositivos pueden ser de muy diversa naturaleza: desde grandes y complejos servidores de cómputo, hasta procesadores de bajo consumo como los integrados en los teléfonos móviles. Sin embargo, ya sean de un tipo u otro, casi todos incluyen un acelerador gráfico o GPU que puede ser utilizado para cómputo de propósito general. Generar núcleos computacionales optimizados para cada acelerador de forma manual requiere de un enorme esfuerzo por parte de los desarrolladores, de hecho, en la práctica, esto se lleva a cabo solamente para algunos modelos. El objetivo del presente trabajo es automatizar la generación de código optimizado para cualquier tipo de GPU mediante una herramienta conocida como Apache TVM. Esta herramienta permite especificar la operación a optimizar a un alto nivel y, a través de una serie de modificaciones intermedias por parte del framework, generar el código optimizado. En este trabajo se desarrolla código para optimizar la operación de multiplicación de matrices, la cual es ampliamente utilizada en la mayoría de los campos científicos, incluyendo las redes neuronales. Una vez generado el código con TVM, se lleva a cabo un estudio de prestaciones, comparando su rendimiento con el de la librería de altas prestaciones NVIDIA cuBLAS y el de otra utilidad de TVM llamada Auto-Tuning (AutoScheduler), que permite automatizar el proceso de desarrollo a partir de una descripción del cómputo. Los resultados muestran que el código desarrollado obtiene un rendimiento similar al obtenido por cuBLAS, y supera el generado por AutoScheduler en multiplicaciones de matrices de dimensiones grandes. Al aplicar esta comparativa a un caso de estudio real, la red neuronal ResNet50-v1.5, donde el escenario de aplicación cambia a matrices muy rectangulares, ha sido posible vencer a cuBLAS en algunas de las capas que corresponden a los productos de matrices más ...
Titel: |
Auto-generación de núcleos computacionales para redes neuronales sobre GPUs ; Auto-generation of computational kernels for neural networks on GPUs ; Acte-generació de nuclis computacionals per a xarxes neuronals sobre GPUs
|
---|---|
Autor/in / Beteiligte Person: | Del Campo Calvo, Francisco Javier ; Alonso Jordá, Pedro ; Castelló Gimeno, Adrián ; Universitat Politècnica de València. Departamento de Sistemas Informáticos y Computación - Departament de Sistemes Informàtics i Computació |
Link: | |
Veröffentlichung: | Universitat Politècnica de València, 2023 |
Medientyp: | Hochschulschrift |
Schlagwort: |
|
Sonstiges: |
|