Vision processing unit


A vision processing unit is an emerging class of microprocessor; it is a specific type of AI accelerator, designed to accelerate machine vision tasks.

Overview

Vision processing units are distinct from video processing units in their suitability for running machine vision algorithms such as CNN, SIFT and similar.
They may include direct interfaces to take data from cameras, and have a greater emphasis on on-chip dataflow between many parallel execution units with scratchpad memory, like a manycore DSP. But, like video processing units, they may have a focus on low precision fixed point arithmetic for image processing.

Contrast with GPUs

They are distinct from GPUs, which contain specialised hardware for rasterization and texture mapping, and whose memory architecture is optimised for manipulating bitmap images in off-chip memory.
Target markets are robotics, the internet of things, new classes of digital cameras for virtual reality and augmented reality, smart cameras, and integrating machine vision acceleration into smartphones and other mobile devices.

Examples

Some processors are not described as VPUs, but are equally applicable to machine vision tasks. These may form a broader category of AI accelerators, however as of 2016 there is no consensus on the name: