【大厂AI课学习笔记NO.71】AI算力芯片GPU/TPU等

AI算力芯片的发展历程

人工智能(AI)算力芯片的发展历程紧密地跟随着AI技术的发展脚步。从早期的基于传统中央处理器(CPU)的计算,到图形处理器(GPU)的广泛应用,再到专门为AI设计的处理器如神经处理单元(NPU)和张量处理单元(TPU)的出现,AI算力芯片不断演进,以满足日益增长的计算需求。

一、早期基于CPU的计算

在AI技术发展的初期,大部分的计算任务都是由CPU来完成的。CPU是计算机的核心部件,负责执行程序的指令,进行数据的处理和存储。然而,CPU的设计初衷是为了处理通用的计算任务,而不是针对AI中大量并行的矩阵运算进行优化。因此,在使用CPU进行AI计算时,往往会遇到计算效率低下的问题。

二、GPU的崛起

随着AI技术的快速发展,尤其是深度学习的兴起,对计算能力的需求急剧增加。GPU由于其并行处理的能力,逐渐在AI计算领域崭露头角。GPU最初是为了加速图形渲染而设计的,但其高度并行的架构也非常适合进行大规模的矩阵运算,这使得GPU成为深度学习训练的首选硬件。

三、专门为AI设计的处理器

尽管GPU在AI计算中表现出色,但人们仍在探索更加高效、更加专用的AI算力芯片。于是,NPU和TPU等专门为AI设计的处理器应运而生。

NPU(神经处理单元)是一种专门为神经网络计算设计的处理器。它通过对神经网络算法进行硬件级别的优化,实现了更高的计算效率和更低的功耗。NPU的出现极大地推动了边缘计算和移动设备上AI应用的发展。

TPU(张量处理单元)则是谷歌开发的一种专门为深度学习设计的定制芯片。TPU通过优化深度学习中常见的张量运算,实现了比传统硬件更高的计算性能和能效比。TPU在谷歌的云服务中得到了广泛应用,为大规模深度学习训练提供了强大的支持。

CPU、GPU、NPU、TPU的定义、原理、特性、优势、场景及异同点

1. CPU(中央处理器)

定义:CPU是电子计算机的主要设备之一,是计算机中的核心配件。其功能主要是解释计算机指令以及处理计算机软件中的数据。

原理:CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码。它把指令分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。

特性:通用性强,能执行多种类型的计算任务;但并行处理能力相对较弱。

优势:适用于复杂的逻辑控制和通用计算任务。

场景:日常办公、网页浏览等通用计算场景。

2. GPU(图形处理器)

定义:GPU是一种专门在个人电脑、工作站、游戏机和一些移动设备上进行图像运算工作的微处理器。

原理:GPU采用并行架构,拥有成百上千个核心,可以同时处理多个任务。它特别适合于处理大量的浮点运算和并行数据。

特性:并行处理能力强,适合进行大规模矩阵运算;功耗相对较高。

优势:在深度学习训练、游戏图形渲染等需要大量并行计算的场景中表现出色。

场景:深度学习训练、游戏、图形渲染等。

3. NPU(神经处理单元)

定义:NPU是一种专门为神经网络计算设计的处理器,通过对神经网络算法进行硬件级别的优化来实现高效计算。

原理:NPU采用针对神经网络优化的架构和指令集,能够高效执行神经网络中的各种运算,如卷积、池化等。

特性:高度优化神经网络计算,低功耗,适合移动设备和边缘计算场景。

优势:在神经网络推理任务中提供极高的性能和能效比。

场景:智能手机、无人机、自动驾驶汽车等边缘计算场景。

4. TPU(张量处理单元)

定义:TPU是一种专门为深度学习设计的定制芯片,通过优化深度学习中常见的张量运算来实现高性能计算。

原理:TPU采用针对张量运算优化的架构和指令集,能够高效执行深度学习中的矩阵乘法和卷积等运算。

特性:专门为深度学习优化,高性能和高能效比;但通用性相对较弱。

优势:在大规模深度学习训练和推理任务中提供卓越的性能。

场景:云服务、数据中心等需要进行大规模深度学习计算的场景。

异同点

  • 相同点:CPU、GPU、NPU和TPU都是用于计算的处理器,它们都能执行计算任务,只是优化的方向和适用的场景不同。
  • 不同点:CPU是通用处理器,适用于各种计算任务;GPU擅长并行处理,适合大规模矩阵运算;NPU专门为神经网络优化,适合神经网络推理任务;TPU则专门为深度学习优化,适合大规模深度学习训练和推理。在性能和功耗方面,CPU通常性能较低但功耗较高;GPU性能较高但功耗也相对较高;NPU和TPU则针对特定任务进行了优化,实现了高性能和低功耗的平衡。

总结一下,就是:

  • 算力
    • CPU:算力相对较低,因为其设计初衷是为了处理通用的计算任务,而不是针对AI中大量并行的矩阵运算进行优化。
    • GPU:算力较高,由于其并行处理的能力,使得它在大规模矩阵运算方面表现出色,适用于深度学习训练等计算密集型任务。
    • NPU:专门为神经网络计算设计的处理器,通过对神经网络算法进行硬件级别的优化,实现了更高的计算效率。
    • TPU:专门为深度学习设计的定制芯片,通过优化深度学习中常见的张量运算,实现了比传统硬件更高的计算性能。
  • 功耗
    • CPU:功耗相对较高,因为其需要处理各种复杂的逻辑控制和通用计算任务。
    • GPU:功耗也相对较高,尤其在进行大规模并行计算时,需要消耗大量的电力。
    • NPU:功耗较低,因为它专门针对神经网络进行了优化,实现了更高的能效比。
    • TPU:功耗相对较低,因为它是专门为深度学习设计的,能够在保证性能的同时降低功耗。

由于不同芯片在设计和制造上的差异,以及任务类型的不同,很难给出一个具体的倍数关系来描述它们之间算力和功耗的对比。但是一般来说,在相同任务下,专门为AI设计的处理器(如NPU和TPU)往往能够在保证性能的同时实现更低的功耗。而CPU和GPU则可能在某些任务下表现出更高的功耗。

这里要注意的是:(考点)

GPU无法单独工作,必须由CPU进行控制和调用。

CPU擅长复杂的逻辑运算和数据格式,GPU浮点运算能力不断直线上升。

NPU视频,多媒体数据。

TPU张量处理单元,30-80倍效率提升。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/527385.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

外包干了6天后悔了,技术明显进步。。。。。

先说一下自己的情况,本科生,19年通过校招进入广州某软件公司,干了接近3年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…

【Kafka系列 08】生产者消息分区机制详解

一、前言 我们在使用 Apache Kafka 生产和消费消息的时候,肯定是希望能够将数据均匀地分配到所有服务器上。 比如很多公司使用 Kafka 收集应用服务器的日志数据,这种数据都是很多的,特别是对于那种大批量机器组成的集群环境,每分…

YOLOv5-Openvino-ByteTrack【CPU】

纯检测如下: YOLOv5-Openvino和ONNXRuntime推理【CPU】 YOLOv6-Openvino和ONNXRuntime推理【CPU】 YOLOv8-Openvino和ONNXRuntime推理【CPU】 YOLOv9-Openvino和ONNXRuntime推理【CPU】 注:YOLOv5和YOLOv6代码内容基本一致! 全部代码Github&…

P8680 [蓝桥杯 2019 省 B] 特别数的和:做题笔记

目录 思路 代码 题目链接: P8680 [蓝桥杯 2019 省 B] 特别数的和 思路 最开始我思路主要是从数字转字符串上想的。因为我们需要判断每一位是否是特殊数,字符串很容易做到这一点,只是在数字相加这一步不好实现。 需要用到字符串与数字的…

实验二(二)OSPF路由协议基础实验

1.实验介绍 1.1关于本实验 开放式最短路径优先 OSPF(Open Shortest Path First)是IETF 组织开发的一个基于链路状态的内部网关协议(Interior Gateway Protocol)。目前针对 IPv4 协议使用的是 OSPF Version 2(RFC2328);OSPF 作为基于链路状态的协议,OSPF 具有以下优…

乡村治理深度解析:策略、挑战与解决方案

毋庸置疑,在今天这个崭新的时代,乡村治理的过程已然向我们发出了挑战。为了迎难而上,我们必须摒弃陈旧观念,勇敢迎接并大胆尝试探索与实践新的思路!为了达到这一宏伟目标,我们需要首先廓清如下关键概念&…

Qt教程 — 1.1 Linux下安装Qt

目录 1 下载Qt 1.1 官方下载 1.2 百度网盘下载 1.3 Linux虚拟机终端下载 2 Qt安装 3 安装相关依赖 4 测试安装 1 下载Qt 1.1 官方下载 通过官网下载对应版本,本文选择的版本为qt-opensource-linux-x64-5.12.12,Qt官方下载链接:htt…

L1-7 分寝室(Python)

学校新建了宿舍楼,共有 n 间寝室。等待分配的学生中,有女生 n0​ 位、男生 n1​ 位。所有待分配的学生都必须分到一间寝室。所有的寝室都要分出去,最后不能有寝室留空。 现请你写程序完成寝室的自动分配。分配规则如下: 男女生不…

diffusion model(十二): StableCascade技术小结

infopaperhttps://arxiv.org/abs/2306.00637githubhttps://github.com/Stability-AI/StableCascade/tree/master个人blog位置http://myhz0606.com/article/stablecascadehttp://stability.AI bloghttps://stability.ai/news/introducing-stable-cascade 前置知识: …

window mysql 安装出现的问题

1.安装到最后时,报错:authentication_string doesnt have a default value 解决办法: 1.不要关掉该页面,点击skip。 然后单击 back 回退到如下界面 2.去掉 Enable Strict Mode。 不要勾选 2. 最后一步:Start Servic…

Linux:kubernetes(k8s)lable和selecto标签和选择器的使用(11)

通过标签是可以让我们的容器和容器之间相互认识,简单来说一边打了标签,一边使用选择器去选择就可以快速的让他们之间耦合 定义标签有两种办法,一个是文件中,一个是命令行里 我们在前几章编进文件的时候里面都有lable比如 这个就是…

docker学习(十四)docker搭建私服

docker私服搭建,配置域名访问,设置访问密码 启动registry docker run -d \-p 5000:5000 \-v /opt/data/registry:/var/lib/registry \registrydocker pull hello-world docker tag hello-world 127.0.0.1:5000/hello-world docker push 127.0.0.1:5000…