From WikiChip
Editing neural processor

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

This page supports semantic in-text annotations (e.g. "[[Is specified as::World Heritage Site]]") to build structured and queryable content provided by Semantic MediaWiki. For a comprehensive description on how to use annotations or the #ask parser function, please have a look at the getting started, in-text annotation, or inline queries help pages.

Latest revision Your text
Line 1: Line 1:
 
{{title|Neural Processor}}
 
{{title|Neural Processor}}
A '''neural processor''', a '''neural processing unit''' ('''NPU'''), or simply an AI Accelerator is a [[application-specific microprocessor|specialized]] circuit that implements all the necessary control and arithmetic logic necessary to execute [[machine learning]] algorithms, typically by operating on [[predictive models]] such as [[artificial neural network]]s (ANNs) or [[random forest]]s (RFs).
+
A '''neural processor''' or a '''neural processing unit''' ('''NPU''') is a [[microprocessor]] that [[application-specific microprocessor|specializes]] in the [[hardware acceleration|acceleration]] of [[machine learning]] algorithms, typically by operating on [[predictive models]] such as [[artificial neural network]]s (ANNs) or [[random forest]]s (RFs).
  
 
NPUs sometimes go by similar names such as a ''tensor processing unit'' (''TPU''), ''neural network processor'' (''NNP'') and ''intelligence processing unit'' (''IPU'') as well as ''vision processing unit'' (''VPU'') and ''graph processing unit'' (''GPU'').
 
NPUs sometimes go by similar names such as a ''tensor processing unit'' (''TPU''), ''neural network processor'' (''NNP'') and ''intelligence processing unit'' (''IPU'') as well as ''vision processing unit'' (''VPU'') and ''graph processing unit'' (''GPU'').
  
== Motivation ==
+
== Examples ==
Executing [[deep neural networks]] such as [[convolutional neural networks]] means performing a very large amount of [[multiply-accumulate operations]], typically in the billions and trillions of iterations. The large number of iterations comes from the fact that for each given input (e.g., image), a single convolution comprises of iterating over every channel, and then every pixel, and then performing a very large number of MAC operations. Many such convolutions are found in a single model and the model itself must be executed on each new input (e.g., every camera frame capture).
+
* Google's {{google|TPU}}
 +
* Intel's Nervana {{nervana|NNP}}
 +
* Nvidia's {{nvidia|Volta|l=arch}} (implements tensor cores)
 +
* Bitmain's {{bitmain|Sophon}}
  
Unlike traditional [[central processing units]] which are great at processing highly serialized instruction streams, machine learning workloads tend to be highly parallelizable, much like a [[graphics processing unit]]. Moreover, unlike a GPU, NPUs can benefit from vastly simpler logic because their workloads tend to exhibit high regularity in the computational patterns of [[deep neural networks]]. For those reasons, many custom-designed dedicated neural processors have been developed.
 
 
== Overview ==
 
A neural processing unit (NPU) is a well-partitioned circuit that comprises all the control and arithmetic logic components necessary to execute [[machine learning]] algorithms. NPUs are designed to accelerate the performance of common machine learning tasks such as image classification, machine translation, object detection, and various other predictive models. NPUs may be part of a large SoC, a plurality of NPUs may be instantiated on a single chip, or they may be part of a dedicated neural-network accelerator.
 
 
=== Classification ===
 
Generally speaking, NPUs are classified as either ''training'' or ''inference''. For chips that are capable of performing both operations, the two phases are still generally performed independently.
 
 
* '''Training''' - NPUs designed to accelerate training are designed to accelerate the curating of new models. This is a highly compute-intensive operation that involves inputting an existing dataset (typically tagged) and iterating over the dataset, adjusting model weights and biases in order to ensure an ever-more accurate model. Correcting a wrong prediction involves propagating back through the layers of the network and guessing a correction. The process involves guessing again and again until a correct answer is achieved at the desired accuracy.
 
 
* '''Inference''' - NPUs designed to accelerate inference operate on complete models. Inference accelerators are designed to input a new piece of data (e.g., a new camera shot), process it through the already trained model and generate a result.
 
 
=== Data types ===
 
{{empty section}}
 
 
== List of machine learning processors ==
 
<!-- Alphabetized -->
 
{{collist
 
| count = 3
 
|
 
* [[Alibaba]]: Ali-NPU
 
* [[AlphaICs]]: Gluon
 
* [[Amazon]]: {{amazon|AWS Inferentia}}
 
* [[Apple]]: Neural Engine
 
* [[AMD]]: AI Engine
 
* [[Arm]]: {{arm|ML Processor}}
 
* [[Baidu]]: {{baidu|Kunlun}}
 
* [[Bitmain]]: {{bitmain|Sophon}}
 
* [[Cambricon]]: {{cambricon|MLU}}
 
* [[cerebras|Cerebras]]: CS-1
 
* [[Flex Logix]]: InferX
 
* [[Nepes]]: [[NM500]] ([[General Vision]] tech)
 
* [[GreenWaves]]: {{greenwaves|GAP8}}
 
* [[Google]]: {{google|TPU}}
 
* [[Gyrfalcon Technology]]: Lightspeeur
 
* [[Graphcore]]: {{graphcore|IPU}}
 
* [[Groq]]:
 
* [[Habana]]: {{habana|HL|HL Series}}
 
* [[Hailo]]: Hailo-8
 
* [[Huawei]]: Ascend
 
* [[Intel]]: {{nervana|NNP}}, {{movidius|Myriad}}, {{mobileye|EyeQ}}, {{intel|GNA}}
 
* [[Kendryte]]: K210
 
* [[Mediatek]]: NeuroPilot
 
* [[Mythic]]: {{mythic|IPU}}
 
* [[NationalChip]]: Neural Processing Unit (NPU)
 
* [[NEC]]: {{nec|SX-Aurora}} (VPU)
 
* [[Nvidia]]: {{nvidia|NVDLA|l=arch}}, {{nvidia|Xavier}}
 
* [[Qualcomm]]: Hexagon
 
* [[Quadric]]: Chimera General Purpose NPU (GPNPU)
 
* [[Samsung]]: Neural Processing Unit (NPU)
 
* [[Rockchip]]: RK3399Pro (NPU)
 
* [[Amlogic]]: Khadas VIM3 (NPU)
 
* [[SiMa.ai]]: Machine Learning System on chip (MLSoC)
 
* [[Synaptics]]: SyNAP (NPU)
 
* [[Tesla (car company)|Tesla]]: {{teslacar|FSD Chip}}
 
* [[Vathys]]
 
* [[Wave Computing]]: DPU
 
* [[Brainchip]]: Akida (NPU & NPEs)
 
* [[Syntiant]]: Neural decision processors
 
}}
 
{{expand list}}
 
 
== See also ==
 
* [[accelerators]]
 
  
 +
{{stub}}
 
[[Category:accelerators]]
 
[[Category:accelerators]]

Please note that all contributions to WikiChip may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see WikiChip:Copyrights for details). Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)

This page is a member of 1 hidden category: