0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文理清CPU、GPU和TPU的关系

罗欣 ? 来源:Google Cloud ? 作者:Kaz Sato ? 2018-09-04 11:12 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

很多读者可能分不清楚 CPUGPU 和 TPU 之间的区别,因此 Google Cloud 将在这篇博客中简要介绍它们之间的区别,并讨论为什么 TPU 能加速深度学习

张量处理单元(TPU)是一种定制化的 ASIC 芯片,它由谷歌从头设计,并专门用于机器学习工作负载。TPU 为谷歌的主要产品提供了计算支持,包括翻译、照片、搜索助理和 Gmail 等。Cloud TPU 将 TPU 作为可扩展的云计算资源,并为所有在 Google Cloud 上运行尖端 ML 模型的开发者与数据科学家提供计算资源。在 Google Next’18 中,我们宣布 TPU v2 现在已经得到用户的广泛使用,包括那些免费试用用户,而 TPU v3 目前已经发布了内部测试版。

第三代 Cloud TPU

如上为 tpudemo.com 截图,该网站 PPT 解释了 TPU 的特性与定义。在本文中,我们将关注 TPU 某些特定的属性。

神经网络如何运算

在我们对比 CPU、GPU 和 TPU 之前,我们可以先了解到底机器学习或神经网络需要什么样的计算。如下所示,假设我们使用单层神经网络识别手写数字。

如果图像为 28×28 像素的灰度图,那么它可以转化为包含 784 个元素的向量。神经元会接收所有 784 个值,并将它们与参数值(上图红线)相乘,因此才能识别为「8」。其中参数值的作用类似于用「滤波器」从数据中抽取特征,因而能计算输入图像与「8」之间的相似性:

这是对神经网络做数据分类最基础的解释,即将数据与对应的参数相乘(上图两种颜色的点),并将它们加在一起(上图右侧收集计算结果)。如果我们能得到最高的预测值,那么我们会发现输入数据与对应参数非常匹配,这也就最可能是正确的答案。

简单而言,神经网络在数据和参数之间需要执行大量的乘法和加法。我们通常会将这些乘法与加法组合为矩阵运算,这在我们大学的线性代数中会提到。所以关键点是我们该如何快速执行大型矩阵运算,同时还需要更小的能耗。

CPU 如何运行

因此 CPU 如何来执行这样的大型矩阵运算任务呢?一般 CPU 是基于冯诺依曼架构的通用处理器,这意味着 CPU 与软件和内存的运行方式如下:

CPU 如何运行:该动图仅展示了概念性原理,并不反映 CPU 的实际运算行为。

CPU 最大的优势是灵活性。通过冯诺依曼架构,我们可以为数百万的不同应用加载任何软件。我们可以使用 CPU 处理文字、控制火箭引擎、执行银行交易或者使用神经网络分类图像。

但是,由于 CPU 非常灵活,硬件无法一直了解下一个计算是什么,直到它读取了软件的下一个指令。CPU 必须在内部将每次计算的结果保存到内存中(也被称为寄存器或 L1 缓存)。内存访问成为 CPU 架构的不足,被称为冯诺依曼瓶颈。虽然神经网络的大规模运算中的每一步都是完全可预测的,每一个 CPU 的算术逻辑单元(ALU,控制乘法器和加法器的组件)都只能一个接一个地执行它们,每一次都需要访问内存,限制了总体吞吐量,并需要大量的能耗。

GPU 如何工作

为了获得比 CPU 更高的吞吐量,GPU 使用一种简单的策略:在单个处理器中使用成千上万个 ALU。现代 GPU 通常在单个处理器中拥有 2500-5000 个 ALU,意味着你可以同时执行数千次乘法和加法运算。

GPU 如何工作:这个动画仅用于概念展示。并不反映真实处理器的实际工作方式。

这种 GPU 架构在有大量并行化的应用中工作得很好,例如在神经网络中的矩阵乘法。实际上,相比 CPU,GPU 在深度学习的典型训练工作负载中能实现高几个数量级的吞吐量。这正是为什么 GPU 是深度学习中最受欢迎的处理器架构。

但是,GPU 仍然是一种通用的处理器,必须支持几百万种不同的应用和软件。这又把我们带回到了基础的问题,冯诺依曼瓶颈。在每次几千个 ALU 的计算中,GPU 都需要访问寄存器或共享内存来读取和保存中间计算结果。因为 GPU 在其 ALU 上执行更多的并行计算,它也会成比例地耗费更多的能量来访问内存,同时也因为复杂的线路而增加 GPU 的物理空间占用。

TPU 如何工作

当谷歌设计 TPU 的时候,我们构建了一种领域特定的架构。这意味着,我们没有设计一种通用的处理器,而是专用于神经网络工作负载的矩阵处理器。TPU 不能运行文本处理软件、控制火箭引擎或执行银行业务,但它们可以为神经网络处理大量的乘法和加法运算,同时 TPU 的速度非常快、能耗非常小且物理空间占用也更小。

其主要助因是对冯诺依曼瓶颈的大幅度简化。因为该处理器的主要任务是矩阵处理,TPU 的硬件设计者知道该运算过程的每个步骤。因此他们放置了成千上万的乘法器和加法器并将它们直接连接起来,以构建那些运算符的物理矩阵。这被称作脉动阵列(Systolic Array)架构。在 Cloud TPU v2 的例子中,有两个 128X128 的脉动阵列,在单个处理器中集成了 32768 个 ALU 的 16 位浮点值。

我们来看看一个脉动阵列如何执行神经网络计算。首先,TPU 从内存加载参数到乘法器和加法器的矩阵中。

然后,TPU 从内存加载数据。当每个乘法被执行后,其结果将被传递到下一个乘法器,同时执行加法。因此结果将是所有数据和参数乘积的和。在大量计算和数据传递的整个过程中,不需要执行任何的内存访问。

这就是为什么 TPU 可以在神经网络运算上达到高计算吞吐量,同时能耗和物理空间都很小。

好处:成本降低至 1/5

因此使用 TPU 架构的好处就是:降低成本。以下是截至 2018 年 8 月(写这篇文章的时候)Cloud TPU v2 的使用价格。

Cloud TPU v2 的价格,截至 2018 年 8 月。

斯坦福大学发布了深度学习和推理的基准套装 DAWNBench。你可以在上面找到不同的任务、模型、计算平台以及各自的基准结果的组合。

DAWNBench:https://dawn.cs.stanford.edu/benchmark/

在 DAWNBench 比赛于 2018 年 4 月结束的时候,非 TPU 处理器的最低训练成本是 72.40 美元(使用现场实例训练 ResNet-50 达到 93% 准确率)。而使用 Cloud TPU v2 抢占式计价,你可以在 12.87 美元的价格完成相同的训练结果。这仅相当于非 TPU 的不到 1/5 的成本。这正是神经网络领域特定架构的威力之所在。

本文来源:Google Cloud Kaz Sato

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11091

    浏览量

    217350
  • gpu
    gpu
    +关注

    关注

    28

    文章

    4961

    浏览量

    131521
  • TPU
    TPU
    +关注

    关注

    0

    文章

    154

    浏览量

    21229
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    CPU\GPU引领,国产AI PC进阶

    电子发烧友网报道(/黄晶晶)当前AI PC已经成为PC产业的下个浪潮,国产CPUGPU厂商在PC市场直处于追赶态势,AI PC给了大
    的头像 发表于 09-01 02:15 ?5726次阅读
    <b class='flag-5'>CPU</b>\<b class='flag-5'>GPU</b>引领,国产AI PC进阶

    智算加速卡是什么东西?它真能在AI战场上干掉GPUTPU

    随着AI技术火得塌糊涂,大家都在谈"大模型"、"AI加速"、"智能计算",可真到了落地环节,算力才是硬通货。你有没有发现,现在越来越多的AI企业不光用GPU,也不怎么迷信TPU了?他们嘴里多了
    的头像 发表于 06-05 13:39 ?610次阅读
    智算加速卡是什么东西?它真能在AI战场上干掉<b class='flag-5'>GPU</b>和<b class='flag-5'>TPU</b>!

    谷歌新TPU 芯片 Ironwood:助力大规模思考与推理的 AI 模型新引擎?

    电子发烧友网报道( / 李弯弯)日前,谷歌在 Cloud Next 大会上,隆重推出了最新TPU AI 加速芯片 ——Ironwood。据悉,该芯片预计于今年晚些时候面向 Google
    的头像 发表于 04-12 00:57 ?2524次阅读

    CPUGPU:渲染技术的演进和趋势

    渲染技术是计算机图形学的核心内容之,它是将三维场景转换为二维图像的过程。渲染技术直在不断演进,从最初的CPU渲染到后来的GPU渲染,性能和质量都有了显著提升。
    的头像 发表于 02-21 11:11 ?779次阅读
    从<b class='flag-5'>CPU</b>到<b class='flag-5'>GPU</b>:渲染技术的演进和趋势

    RK3588性能设置 CPU GPU DDR NPU 频率设置

    RK3588 CPU GPU DDR定频策略
    的头像 发表于 02-15 16:09 ?2076次阅读

    GPU渲染才是大势所趋?CPU渲染与GPU渲染的现状与未来

    在3D建模和渲染领域,随着技术的发展,CPU渲染和GPU渲染这两种方法逐渐呈现出各自独特的优势,并且在不同的应用场景中各有侧重。尽管当前我们处在CPU渲染和
    的头像 发表于 02-06 11:04 ?726次阅读
    <b class='flag-5'>GPU</b>渲染才是大势所趋?<b class='flag-5'>CPU</b>渲染与<b class='flag-5'>GPU</b>渲染的现状与未来

    2024年GPU出货量增长显著,超越CPU

    6%的同比增长,总量超过2.51亿颗,这数据不仅彰显了GPU市场的繁荣,也反映了当前市场对于图形处理能力的巨大需求。 尤为值得提的是,与同样作为计算机核心部件的CPU相比,
    的头像 发表于 01-17 14:12 ?554次阅读

    FPGA+GPU+CPU国产化人工智能平台

    平台采用国产化FPGA+GPU+CPU构建嵌入式多核异构智算终端,可形成FPGA+GPU、FPGA+CPUCPU+FPGA等组合模式,形成低功耗、高可扩展性的硬件系统,结合使用场景灵
    的头像 发表于 01-07 16:42 ?1146次阅读
    FPGA+<b class='flag-5'>GPU+CPU</b>国产化人工智能平台

    文理解多模态大语言模型——下

    /understanding-multimodal-llms ? 《文理解多模态大语言模型 - 上》介绍了什么是多模态大语言模型,以及构建多模态 LLM 有两种主要方式之:统嵌入
    的头像 发表于 12-03 15:18 ?625次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文理</b>解多模态大语言模型——下

    【「算力芯片 | 高性能 CPU/GPU/NPU 微架构分析」阅读体验】--了解算力芯片GPU

    封装到个超长的指令字中,然后CPU中有对应宽度的 ALU 来完成相应的指令操作。这是种非常经济的硬件设计方式,它的核心逻辑是通过简单的硬件构造,实现尽可能高的指令并行度。 总的来说,GPU
    发表于 11-03 12:55

    看懂】大白话解释“GPUGPU算力”

    随着大模型的兴起,“GPU算力”这个词正频繁出现在人工智能、游戏、图形设计等工作场景中,什么是GPU,它与CPU的区别是什么?以及到底什么是GPU算力?本篇文章主要从以下5个角度,让您
    的头像 发表于 10-29 08:05 ?2695次阅读
    【<b class='flag-5'>一</b><b class='flag-5'>文</b>看懂】大白话解释“<b class='flag-5'>GPU</b>与<b class='flag-5'>GPU</b>算力”

    【「大模型时代的基础架构」阅读体验】+ 第、二章学习感受

    常用的机器学习算法,重点剖析了元线性回归算法,由此引出机器学习算法的运算特征,此后分别描述了使用CPUGPUTPU和NPU运行机器学习算法的特点,比如
    发表于 10-10 10:36

    动画渲染用GPU还是CPU的选择思路

    对话Imagination中国区董事长:以GPU为支点加强软硬件协同,助力数【白皮书下载】分布式功能安全的创新与突破本文来源:渲染101动画渲染动画渲染是个计算密集型的过程,需要强大的硬件支持
    的头像 发表于 09-28 08:05 ?838次阅读
    动画渲染用<b class='flag-5'>GPU</b>还是<b class='flag-5'>CPU</b>的选择思路

    CPU时钟周期与主频的关系和区别

    CPU时钟周期与主频是计算机体系结构中两个紧密相连且至关重要的概念,它们之间既存在关系又有所区别。以下将详细阐述CPU时钟周期与主频的关系和区别。
    的头像 发表于 09-26 15:46 ?4029次阅读

    TPU v1到Trillium TPU,苹果等科技公司使用谷歌TPU进行AI计算

    ,在训练尖端人工智能方面,大型科技公司正在寻找英伟达以外的替代品。 ? 不断迭代的谷歌TPU 芯片 ? 随着机器学习算法,特别是深度学习算法在各个领域的广泛应用,对于高效、低功耗的AI计算硬件需求日益增长。传统的CPUGPU
    的头像 发表于 07-31 01:08 ?3986次阅读