Aceleración hardware para inferencia en redes neuronales convolucionales.

Loading...
Thumbnail Image

Date

2021

Journal Title

Journal ISSN

Volume Title

Publisher

Universidad de Concepción.

Abstract

Gracias a su alta precisión para clasificar objetos en imágenes, las redes neuronales con volucionales (CNN) son una herramienta muy relevante en la visión computacional. Este tipo de red neuronal utiliza capas convolucionales para extraer características de las imágenes y las clasifica por medio de capas de clasificación. Típicamente, el proceso de reconocimiento, llamado inferencia, es aplicado en unidades centrales de procesamiento (CPU) o unidades de procesamiento gráfico (GPU), pero debido al alto paralelismo de estas últimas, las GPUs muestran un mejor desempeño. Aun así, su alto consumo de potencia dificulta la implementación de estas plataformas en dispositivos móviles. Por esto, una alternativa para solucionar este problema es diseñar arquitecturas hardware en sistemas dedicados, como arreglos de compuertas programables (FPGA), que permiten reducir el consumo de potencia y acelerar la inferencia. Debido a esto, en este trabajo diseñamos una arquitectura heterogénea para realizar la inferencia de la CNN MobileNet V2 sobre hardware dedicado. Esta arquitectura utiliza una CPU y memoria embebida para controlar y almacenar datos del proceso, y un acelerador hardware sintetizado en la lógica programable de un FPGA para disminuir los tiempos de inferencia. Para reducir la cantidad de operaciones y datos en la FPGA, utilizamos técnicas de loop tiling, pruning y cuantización. Implementamos la arquitectura sobre la plataforma Xilinx Zynq Ultrascale+, utilizando la CPU ARM Cortex-A53 como controlador, una memoria DDR4 de 2GB para almacenar datos y la FPGA XCZU7EV para sintetizar cuatro elementos de procesamiento que permiten la inferencia en paralelo. Nuestra implementación puede inferir una imagen de la base de datos ImageNet de 224×224 píxeles en 220ms, utilizando 532 bloques de RAM (BRAM), 24 RAMs de UltraScale (URAM) y 340 procesadores digitales de señales (DSP) del FPGA, y consumiendo 7.34W de potencia. Comparada con una implementación software sobre una GPU y CPU, nuestro diseño es 10.18 veces más lento que la GPU y tiene un frame-rate similar a la CPU, pero consume 29.23 y 12.93 veces menos potencia que estos dispositivos respectivamente

Description

Tesis para optar al grado de Magíster en Ciencias de la Ingeniería con mención en Ingeniería Eléctrica.

Keywords

Mosaico de Bucle (Ciencia de la Computación), Convoluciones (Matemáticas), Arquitectura de Redes de Computadores, Industria, Innovación e Infraestructura

Citation

URI

Collections