Una unidad de procesamiento de visión ( VPU ) es (a partir de 2018) una clase emergente de microprocesador ; es un tipo específico de acelerador de IA , diseñado para acelerar las tareas de visión artificial . [1] [2]
Descripción general
Las unidades de procesamiento de visión son distintas de las unidades de procesamiento de video (que están especializadas en codificación y decodificación de video ) en su idoneidad para ejecutar algoritmos de visión artificial como CNN ( redes neuronales convolucionales ), SIFT ( transformación de características invariantes de escala ) y similares.
Pueden incluir interfaces directas para tomar datos de las cámaras (sin pasar por los búferes fuera del chip) y tener un mayor énfasis en el flujo de datos en el chip entre muchas unidades de ejecución paralelas con memoria scratchpad , como un DSP de muchos núcleos . Pero, al igual que las unidades de procesamiento de video, pueden centrarse en la aritmética de punto fijo de baja precisión para el procesamiento de imágenes .
Contraste con las GPU
Se diferencian de las GPU , que contienen hardware especializado para rasterización y mapeo de texturas (para gráficos 3D ), y cuya arquitectura de memoria está optimizada para manipular imágenes de mapa de bits en la memoria fuera del chip (leer texturas y modificar búferes de fotogramas , con patrones de acceso aleatorio ). .
Los mercados objetivo son la robótica , Internet de las cosas , nuevas clases de cámaras digitales para realidad virtual y realidad aumentada , cámaras inteligentes y la integración de la aceleración de la visión artificial en teléfonos inteligentes y otros dispositivos móviles .
Ejemplos de
- Movidius Myriad X , que es la unidad de procesamiento de visión de tercera generación en la línea Myriad VPU de Intel Corporation .
- Tarjeta ComBox x64 Movidius PCIe Blade con VPU Myriad de alta densidad para inferencia CNN en CC de la tecnología ComBox
- Movidius Myriad 2 , que se utiliza en Google Project Tango , [3] Google Clips y DJI Drones [4]
- Pixel Visual Core (PVC), que es un procesador de imagen , visión e inteligencia artificial totalmente programable para dispositivos móviles
- Microsoft HoloLens , que incluye un acelerador denominado Unidad de procesamiento holográfico (complementario a su CPU y GPU), destinado a interpretar las entradas de la cámara, para acelerar el seguimiento y la visión del entorno para aplicaciones de realidad aumentada. [5]
- Eyeriss , un diseño del MIT destinado a ejecutar redes neuronales convolucionales . [6]
- Inuitive, una empresa de Israel que se centró en el diseño de VPU, el nombre del producto es serie NU.
- NeuFlow , un diseño de Yann LeCun (implementado en FPGA ) para acelerar convoluciones , utilizando una arquitectura de flujo de datos.
- Mobileye EyeQ , de Mobileye
- Acelerador de visión programable (PVA), un procesador de visión VLIW de 7 vías diseñado por Nvidia .
Procesadores similares
Algunos procesadores no se describen como VPU, pero son igualmente aplicables a las tareas de visión artificial. Estos pueden formar una categoría más amplia de aceleradores de IA (a los que también pueden pertenecer las VPU), sin embargo, a partir de 2016 no hay consenso sobre el nombre:
- IBM TrueNorth , un procesador neuromórfico destinado a tareas de inteligencia y reconocimiento de patrones de datos de sensores similares , incluido video / audio.
- Unidad de procesamiento neuronal Qualcomm Zeroth , otra entrada en la clase emergente de chips orientados a sensores / IA. [7]
Ver también
- Adapteva Epiphany , un procesador Manycore con un énfasis similar en el flujo de datos en el chip, se centró en el rendimiento de punto flotante de 32 bits .
- CELL , un procesador multinúcleo con características bastante consistentes con las unidades de procesamiento de visión ( instrucciones SIMD y tipos de datos adecuados para video y DMA en chip entre memorias del scratchpad).
- Coprocesador
- Unidad de procesamiento de gráficos , también comúnmente utilizada para ejecutar algoritmos de visión. La arquitectura Pascal de NVidia incluye soporte FP16 , para proporcionar una mejor compensación de precisión / costo para las cargas de trabajo de IA.
- MPSoC
- OpenCL
- OpenVX
- Unidad de procesamiento de física: un intento anterior de complementar la CPU y la GPU con un acelerador de alto rendimiento.
- Unidad de procesamiento de tensor , un chip utilizado internamente por Google para acelerar los cálculos de IA.
Referencias
- ^ Seth Colaner; Matthew Humrick (3 de enero de 2016). "Un tercer tipo de procesador para AR / VR: Movidius 'Myriad 2 VPU" . Hardware de Tom .
- ^ Prasid Banerje (28 de marzo de 2016). "El auge de las VPU: dar ojos a las máquinas" . Digit.in .
- ^ Weckler, Adrian. "La empresa de tecnología de Dublín Movidius para impulsar el nuevo casco de realidad virtual de Google" . Independiente, es decir . Consultado el 15 de marzo de 2016 .
- ^ "DJI trae dos nuevos drones insignia a la línea con Myriad 2 VPUs - Tecnología de visión artificial - Movidius" . www.movidius.com .
- ^ Fred O'Connor (1 de mayo de 2015). "Microsoft profundiza en los detalles de HoloLens: se revela el rol del 'procesador holográfico'" . PCWorld .
- ^ Chen, Yu-Hsin; Krishna, Tushar; Emer, Joel y Sze, Vivienne (2016). "Eyeriss: un acelerador reconfigurable energéticamente eficiente para redes neuronales convolucionales profundas" . IEEE International Solid-State Circuits Conference, ISSCC 2016, Digest of Technical Papers . págs. 262-263.
- ^ "Presentación de procesadores Qualcomm Zeroth: Computación inspirada en el cerebro" . Qualcomm . 10 de octubre de 2013.
enlaces externos
- Arquitectura Eyeriss
- Unidad de procesamiento holográfico
- NeuFlow: un procesador de flujo de datos reconfigurable en tiempo de ejecución para Vision