本文主要解答以下问题,

  1. NPU是新玩意儿吗?
  2. 芯片里面的CPU、GPU、NPU究竟是什么,它们是怎么工作的?

引言:中国首款嵌入式NPU诞生

6月20日,中星微“数字多媒体芯片技术”国家重点实验室在京宣布,中国首款嵌入式NPU(神经网络处理器)芯片诞生,目前已应用于全球首款嵌入式视频处理芯片“星光智能一号”。

  • 这意味着什么?  标志着我国在NPU领域的研究和开发上取得了重大突破、基于“数据驱动并行计算”架构的深度学习人工智能领域达到国际先进水平、使我国视频监控行业发展由模拟时代、数字时代跨入智能时代
  • 为啥要做NPU的研究? 简言之,将深度学习系统做到小型化,用在嵌入式系统中。
  • 其他同类产品不香嘛?  不香    
  1. 传统的冯诺依曼架构CPU,在面对这种类型数据运算时已经力不从心
  2. 信号处理器DSP同样无法高效处理大量并行运算
  3. 图形处理器GPU是为三维图形设计,用于CNN算法功耗高、成本高,且不适合嵌入环境
  4. 可编程门阵列FPGA能灵活实现各种算法架构,但一般用于算法原型机的验证,同样存在功耗高、价格高问题
  • NPU强在哪儿?

采用全新的数据驱动并行运算架构,颠覆了冯诺依曼架构,极大提升了计算能力与功耗之比,擅长处理海量视频、图像类多媒体数据(集成视频信号处理、视频压缩编码模块以及神经网络处理器),能使人工智能在嵌入式机器视觉应用中大显身手。

  • 典型的应用场景  视频监控领域(其中之一) -- 目标检测跟踪、汽车无人驾驶或智能辅助、无人机自动拍摄、跟踪、避障,智能机器人理解合成语言、娱乐和陪护等

此前的技术主要存在两方面局限,一是识别准确度不高;二是传统技术需要先把海量视频数据传到后台,再在后台进行识别,无法实时得到结果。

什么是CPU?

中央处理器(CPU),是电子计算机的主要设备之一,电脑中的核心配件。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU是计算机中负责读取指令,对指令译码并执行指令的核心部件。中央处理器主要包括两个部分,即控制器、运算器,其中还包括高速及实现它们缓冲处理器之间联系的数据、控制的总线。电子计算机三大核心部件就是CPU、内部存储器、输入/输出设备。中央处理器的功效主要为处理指令、执行操作、控制时间、处理数据。在计算机体系结构中,CPU 是对计算机的所有硬件资源(如存储器、输入输出单元) 进行控制调配、执行通用运算的核心硬件单元。CPU 是计算机的运算和控制核心。计算机系统中所有软件层的操作,最终都将通过指令集映射为CPU的操作。

什么是GPU?

图形处理器(英语:Graphics Processing Unit,缩写:GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。

GPU使显卡减少了对CPU的依赖,并进行部分原本CPU的工作,尤其是在3D图形处理时GPU所采用的核心技术有硬件T&L(几何转换和光照处理)、立方环境材质贴图和顶点混合、纹理压缩和凹凸映射贴图、双重纹理四像素256位渲染引擎等,而硬件T&L技术可以说是GPU的标志。GPU的生产商主要有NVIDIA和ATI。

GPU的构成相对简单,有数量众多的计算单元和超长的流水线,特别适合处理大量的类型统一的数据。但GPU无法单独工作,必须由CPU进行控制调用才能工作。CPU可单独作用,处理复杂的逻辑运算和不同的数据类型,但当需要大量的处理类型统一的数据时,则可调用GPU进行并行计算。

什么是TPU?

在NPU前推出的张量处理器,个人认为是后续机器学习、深度学习专用处理器的祖师爷。

TPU(Tensor Processing Unit)即张量处理单元,是一款为机器学习而定制的芯片,经过了专门深度机器学习方面的训练,它有更高效能(每瓦计算能力)。因为它能加速其第二代人工智能系统TensorFlow的运行,而且效率也大大超过GPU――Google的深层神经网络就是由TensorFlow引擎驱动的。TPU是专为机器学习量身定做的,执行每个操作所需的晶体管数量更少,自然效率更高。

TPU与同期的CPU和GPU相比,可以提供15-30倍的性能提升,以及30-80倍的效率(性能/瓦特)提升。TPU每瓦能为机器学习提供比所有商用GPU和FPGA更高的量级指令,这基本相当于7年后的科技水平。TPU是为机器学习应用特别开发,以使芯片在计算精度降低的情况下更耐用,这意味每一个操作只需要更少的晶体管,用更多精密且大功率的机器学习模型,并快速应用这些模型,因此用户便能得到更正确的结果。

什么是NPU?

嵌入式神经网络处理器(NPU)采用“数据驱动并行计算”的架构,特别擅长处理视频、图像类的海量多媒体数据。NPU处理器专门为物联网人工智能而设计,用于加速神经网络的运算,解决传统芯片在神经网络运算时效率低下的问题。

在GX8010中,CPU和MCU各有一个NPU,MCU中的NPU相对较小,习惯上称为SNPU。

NPU处理器包括了乘加、激活函数、二维数据运算、解压缩等模块。乘加模块用于计算矩阵乘加、卷积、点乘等功能,NPU内部有64个MAC,SNPU有32个。激活函数模块采用最高12阶参数拟合的方式实现神经网络中的激活函数,NPU内部有6个MAC,SNPU有3个。二维数据运算模块用于实现对一个平面的运算,如降采样、平面数据拷贝等,NPU内部有1个MAC,SNPU有1个。解压缩模块用于对权重数据的解压。为了解决物联网设备中内存带宽小的特点,在NPU编译器中会对神经网络中的权重进行压缩,在几乎不影响精度的情况下,可以实现6-10倍的压缩效果。

NPU, CPU, GPU 如何工作?

手机芯片和电脑的CPU是不一样的,手机芯片叫做Soc,是集成了很多的东西的,CPU、GPU、NPU就是代表。

其中CPU是负责计算和整体协调的,而GPU是负责和图像有关的部分,NPU负责和AI有关的部分。其工作流程则是,任何工作都要先通过CPU,CPU再根据这一块的工作的性质来决定分配给谁。如果是图形方面的计算,就会分配给GPU,如果是AI方面的计算需求,就分配给NPU。

手机芯片中除了NPU、CPU、GPU之外,还有DSP、ISP、基带等等,这些和上述NPU、GPU的工作性质其实也是一样的,分别处理不同的任务,都是通过CPU来进行指挥的。

附录(各种PU缩写, 全称集合)

APU -- Accelerated Processing Unit, 加速处理器,AMD公司推出加速图像处理芯片产品。

BPU -- Brain Processing Unit, 地平线公司主导的嵌入式处理器架构。

CPU -- Central Processing Unit 中央处理器, 目前PC core的主流产品。

DPU -- Deep learning Processing Unit, 深度学习处理器,最早由国内深鉴科技提出;另说有Dataflow Processing Unit 数据流处理器, Wave Computing 公司提出的AI架构;Data storage Processing Unit,深圳大普微的智能固态硬盘处理器。

FPU -- Floating Processing Unit 浮点计算单元,通用处理器中的浮点运算模块。

GPU -- Graphics Processing Unit, 图形处理器,采用多线程SIMD架构,为图形处理而生。

HPU -- Holographics Processing Unit 全息图像处理器, 微软出品的全息计算芯片与设备。

IPU -- Intelligence Processing Unit, Deep Mind投资的Graphcore公司出品的AI处理器产品。

MPU/MCU -- Microprocessor/Micro controller Unit, 微处理器/微控制器,一般用于低计算应用的RISC计算机体系架构产品,如ARM-M系列处理器。

NPU -- Neural Network Processing Unit,神经网络处理器,是基于神经网络算法与加速的新型处理器总称,如中科院计算所/寒武纪公司出品的diannao系列。

RPU -- Radio Processing Unit, 无线电处理器, Imagination Technologies 公司推出的集合集Wifi/蓝牙/FM/处理器为单片的处理器。

TPU -- Tensor Processing Unit 张量处理器, Google 公司推出的加速人工智能算法的专用处理器。目前一代TPU面向Inference,二代面向训练。

VPU -- Vector Processing Unit 矢量处理器,Intel收购的Movidius公司推出的图像处理与人工智能的专用芯片的加速计算核心。

WPU -- Wearable Processing Unit, 可穿戴处理器,Ineda Systems公司推出的可穿戴片上系统产品,包含GPU/MIPS CPU等IP。

XPU -- 百度与Xilinx公司在2017年Hotchips大会上发布的FPGA智能云加速,含256核。

ZPU -- Zylin Processing Unit, 由挪威Zylin 公司推出的一款32位开源处理器。

参考链接

https://www.sohu.com/a/84710518_160309

https://blog.csdn.net/qq_40695642/article/details/101602284

https://baijiahao.baidu.com/s?id=1662114168307081910&wfr=spider&for=pc

https://baijiahao.baidu.com/s?id=1663935092143263199&wfr=spider&for=pc

【总结】NPU/CPU/GPU 傻傻分不清?相关推荐

  1. 国防大学计算机学院,国防大学和国防科技大学是同一所学校吗?很多人傻傻都分不清!...

    国防大学和国防科技大学,这两所大学名字相近,极易混淆,在很多网站搜索"国防大学录取分数线",出来的全是国防科技大学的的高考录取分数线,所以给广大考生带来了很大困惑,难道国防大学和国 ...

  2. VPU/NPU/TPU/GPU/CPU眼花缭乱,傻傻分不清楚?三百字讲明白

    VPU/NPU/TPU/GPU/CPU眼花缭乱,傻傻分不清楚?三百字讲明白 简介 详解 参考链接 简介 CPU,Centeral Processing Unit(中央处理器) GPU,Graphics ...

  3. (转)CPU/GPU/TPU/NPU傻傻分不清楚

    刚开始接触深度学习概念时,基本大多数时候也就提到GPU,也基本是用GPU来进行深度学习算法训练或部署人脸识别系统的. 近几年,随着人工智能(尤其是人脸识别)的爆炸式发展,诞生了许多新的东西,其中这芯片 ...

  4. CPU、GPU、DPU、TPU、NPU...傻傻分不清楚?实力扫盲——安排

    ​ 人工智能的发展离不开算力的支持,算力又是依附于各种硬件设备的,没有了算力设备的加持,就好比炼丹少了丹炉一样,可想而知,人工智能智能也就无用武之地了.以深度学习为主的人工智能方向的发展更是离不开强大 ...

  5. 数据平台、大数据平台、数据中台……傻傻分不清?这次终于有人讲明白了!

    来源 | 智领云科技 造概念,在IT行业可不是一件陌生的事儿,中文博大精深,新名词.新概念往往简单准确,既可以被大众接受,又可以被专家把玩,真正做到雅俗共赏.各有趣味.近年来,数据中台之火爆,什么数据 ...

  6. 串行、并行、并发,别再傻傻分不清了!

    开足码力,码动人生,微信搜索[ 程序员大帝 ],关注这个一言不合就开车的的代码界老司机 本文 GitHub上已经收录 https://github.com/BeKingCoding/JavaKing ...

  7. 国家电网和南方电网还傻傻分不清?

    参看:都2020年了,国家电网和南方电网还傻傻分不清? 一.名称不同 一个叫南方电网,一个叫国家电力电网,虽然都是电网,但是区别还是很大的 而且成立时间不一样:国家电力电网有限公司成立于2002年12 ...

  8. cdn厂商 同兴万点_同兴万点:TXNetworks和CDNetworks让我们傻傻分不清

    原标题:同兴万点:TXNetworks和CDNetworks让我们傻傻分不清 在2008年2月25日成立的同兴万点,公司全称为同兴万点(北京)网络技术有限公司(TXNetworks),一直专注于CDN ...

  9. 动态ram依靠什么存储信息_ROM、RAM、DRAM、SRAM和FLASH傻傻分不清

    ROM.RAM.DRAM.SRAM和FLASH各类储存器在电脑.手机.电子设备.嵌入式设备及相应的开发中普遍应用的,但是很多还是傻傻分不清楚.下面就简单介绍下这几个吧! ROM和RAM ROM:只读存 ...

  10. Executor 与 ExecutorService 和 Executors 傻傻分不清

    转载自  Executor 与 ExecutorService 和 Executors 傻傻分不清 java.util.concurrent.Executor, java.util.concurren ...

最新文章

  1. 代码示例_网络编程_select
  2. awstats 安装与配置
  3. Teambition CEO齐俊元:大象起舞,现代组织的企业协作
  4. 04-经典老歌(2000年后)
  5. python对象列表转换为字典_python – 将csv.DictReader对象转换为字典列表...
  6. 十二月份找工作好找吗_注会过两门好找工作吗?好找
  7. 服务器端接华为sdk无响应,sdk未响应
  8. Anaconda+vscode+pytorch环境搭建
  9. Dapr牵手.NET学习笔记:绑定
  10. jenkins安装部署全过程(linux)
  11. 实现JNI的另一种方法:使用RegisterNatives方法传递和使用Java自定义类 (转)
  12. ueditor滚动条
  13. 在linux下运行.o文件,Linux环境下在可执行程序中嵌入资源文件
  14. 什么是广域网和局域网?
  15. Cloakroom BZOJ2794 POI2012(背包问题)
  16. nc 自开节点做参照_NC6period;3常见问题记录
  17. 生日快乐网站模板(HTML5+JS+CSS) 带音效
  18. [RK3399][Android7.1] 移植笔记 --- 9.7寸eDP显示屏添加
  19. python 操作word 修改页眉与页脚
  20. 50个明星区块链项目跌破发行价,超10家项目几近归零

热门文章

  1. 服务器手机信息报警,广东肇庆110全面开通手机短信报警服务
  2. 记录每天背的单词,准备考研。(2月13日)
  3. 【系统架构设计师】软考高级职称,一次通过,倾尽所有,软考【系统架构设计师】论文写作方法必知必会!!!!
  4. 文件服务器mfs,分布式文件系统MFS(moosefs)实现存储共享
  5. 干货——图像分类(上)
  6. ffmpeg 为取经而来_孙悟空很早之前就死了,取经的其实是六耳猕猴,这说法是真的吗?...
  7. python回归分析波士顿房价_python 线性回归(Linear Regression)预测波士顿房价
  8. 期货基础知识——期货期权中英文对照表
  9. Repeating Annotations
  10. 正则正数,负数,整数,浮点数校验大全