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

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

3天内不再提示

TPU内存(一)

jf_pJlTbmA9 来源:jf_pJlTbmA9 作者:jf_pJlTbmA9 2023-08-18 11:29 次阅读

首先我们来看一下TPU的简要架构。

wKgZomTeyeaAZIfgAAHD0ac5UQY873.jpg

我们可以从ppt中了解到一个TPU中包含多个NPU(Neuron Processing Unit),主要由一个local memory和多个执行单元组成。前者用于存储要运算的数据,后者是TPU上最小的计算单元。每个NPU一次可以驱动它的所有EU做一个MAC操作。

就整体 TPU 内存而言,它由system memory和local memory组成。 system memory的主要部分是global memory,其实就是一块DDR。 有时根据 TPU 的特殊设计还会有其他组件,但我们不会在视频中提及这些部分,所以现在了解global memory就足够了。 而对于local memory,我们暂时只需要知道是一组Static RAM就可以了。 稍后我会进一步解释。

通常global memory很大,用于存储来自host端的整个数据块。

而local memory虽然有限但在计算速度上更有优势。

所以有时候对于一个很大的张量,我们需要把它切分成几个部分,送到local memory中进行计算,然后把结果存回global memory。

为了在 TPU 上执行这些操作,我们就需要用到指令。

wKgaomTeyeiALJ1CAAIDykCTHHk383.jpg

指令主要有两种:

  1. GDMA用于system memory和local memory间或system memory内的数据传输;
  2. BDC用于驱动执行单元在NPU上做计算工作;
    另外,对于那些不适合并行加速的计算,比如NMS,SORT,我们还需要HAU指令,但是这意味着我们需要额外的处理器

对于local memory的构成,它是由多个Static RAM组成的。每个 SRAM 称为一个bank。此外,我们将这些 SRAM 分成多个部分给同样数量的NPU,每个部分称为一个lane。

wKgZomTeyeqAXvi9AAFu4L8pxm8967.jpg

而对于每个NPU,它只能访问属于它的那部分local memory,这使得单个NPU的执行单元只能处理自己local memory上的那部分张量。

wKgaomTeyeuAfgPDAAF-yNBzCFA101.jpg

一旦我们调用单个 BDC 指令,所有 NPU 的执行单元将在每个 NPU 的相同位置执行相同的操作。 这就是 TPU 加速运算的方式。

此外,TPU 可以同时处理的数据数量取决于每个 NPU 上的执行单元数量。

对于一个特定的TPU,EU Bytes是固定的,所以对于不同类型的数据,EU的个数会有所不同。

例如当EU Bytes为64时,则表示一个NPU可以同时处理64个int8数据。

wKgaomTeye2Ad3tgAAHvEqSiXMk797.jpg

同理,我们可以根据数据的字节计算出对应的EU_NUM。

对于地址分配,假设我们的local memory由16个SRAM组成,总内存为16MB,有64个NPU,那么每个NPU的内存为256KB。

wKgZomTeyfCAAJ_6AAHhbitBbHs249.jpg

单个通道中每个bank的内存大小则为16KB,相当于16x1024 字节。

所以这个块的地址范围是从0到16x1024 – 1。

同理,NPU0中下个bank的地址从16x1024开始到32x1024-1

按照这个规则,我们就可以得到local memory上的所有地址。

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

    关注

    11

    文章

    703

    浏览量

    65154
  • 内存
    +关注

    关注

    8

    文章

    2962

    浏览量

    73796
  • TPU
    TPU
    +关注

    关注

    0

    文章

    138

    浏览量

    20684
收藏 人收藏

    评论

    相关推荐

    TPU-MLIR开发环境配置时出现的各种问题求解

    按照 TPU-MLIR 开发指南进行环境配置: 2.1. 代码下载 代码路径: https://github.com/sophgo/tpu-mlir 克隆该代码后, 需要在Docker中编译
    发表于 01-10 08:02

    CORAL-EDGE-TPU:珊瑚开发板TPU

    包括个上系统模块(SOM)和护壁板。SOM基于iMX 8M应用处理器,还包含LPDDR4内存,eMMC存储,双频Wi-Fi和Edge TPU。Edge TPU是由Google设计的小
    发表于 05-29 10:43

    TPU透明副牌.TPU副牌料.TPU抽粒厂.TPU塑胶副牌.TPU再生料.TPU低温料

    清源塑胶经营. 供应TPU塑胶原料.副牌.再生颗粒料.TPU塑胶.TPU透明副牌. 再生粒子.白色.黑色.透明. 注塑料.挤出料. 压延等等..聚醚. 脂肪料. 聚酯料.硬度70A--98A.
    发表于 11-21 17:21

    TPU副牌低温料.TPU热熔料.TPU中温料.TPU低温塑胶.TPU低温抽粒.TPU中温塑料

    清源塑胶公司.供应TPU塑胶原料.副牌.再生颗粒料.TPU塑胶.TPU透明副牌. 再生粒子.白色.黑色.透明. 注塑料.挤出料. 压延等等..聚醚. 脂肪料. 聚酯料.硬度70A--98A. 高硬度
    发表于 11-21 17:33

    供应TPU抽粒工厂.TPU再生工厂.TPU聚醚料.TPU聚酯料.TPU副牌透明.TPU副牌.TPU中低温料

    清源塑胶经营.进口.国内.供应TPU原料.副牌TPU塑胶.TPU透明副牌. 再生粒子.白色.黑色.透明. 注塑料.挤出料. 压延等等..聚醚. 脂肪料. 聚酯料.硬度70A--98A. 高硬度
    发表于 11-21 17:47

    采购TPU复牌料.复牌TPU原料.TPU复牌透明塑料.TPU废边料.TPU废膜料.TPU低温料

    全球大量采购① tpu,透明,白色,副牌,再生粒,注塑,挤出料,TPU边角膜料. TPU废卷膜. 进口.国内料. 200吨,② TPU低温,中温.副牌料,胶块料. 200吨, ③ PB
    发表于 11-22 02:38

    如何验证MC68332 TPU配置是否正确?

    a) 以下 TPU 模块配置在项目中完成 *M332_TPU_TMCR = 0x1e4c;/* 选择 TCR1 时基 = 250nsec, TCR2 = 4usec,仿真模式
    发表于 05-09 08:17

    BM1684中各种内存的概念

    A53专用 + 4GB TPU专用 + 4GB VPP/VPU专用。 设备内存(Device Memory)和系统内存(Host Memory): 根据BM168x产品类型或工作模式的不同,设备
    发表于 09-19 07:47

    tpu是什么材料_tpu硬度范围_tpu的应用

    TPU(Thermoplastic polyurethanes)名称为热塑性聚氨酯弹性体橡胶。主要分为有聚酯型和聚醚型之分,它硬度范围宽(60HA-85HD)、耐磨、耐油,透明,弹性好,在日用品
    发表于 12-01 15:55 2w次阅读

    文了解CPU、GPU和TPU的区别

    很多读者可能分不清楚 CPU、GPU 和 TPU 之间的区别,因此 Google Cloud 将在这篇博客中简要介绍它们之间的区别,并讨论为什么 TPU 能加速深度学习。
    的头像 发表于 09-06 16:53 2.8w次阅读

    文搞懂 CPU、GPU 和 TPU

    张量处理单元(TPU)是种定制化的 ASIC 芯片,它由谷歌从头设计,并专门用于机器学习工作负载。TPU 为谷歌的主要产品提供了计算支持,包括翻译、照片、搜索助理和 Gmail 等。 在本文中,我们将关注
    的头像 发表于 09-15 10:46 4.4w次阅读

    TPU内存(二)

    TPU内存(二)
    的头像 发表于 08-18 11:29 410次阅读
    <b class='flag-5'>TPU</b><b class='flag-5'>内存</b>(二)

    TPU和NPU的区别

    和NPU之间的区别。 什么是TPUTPU,即Tensor Processing Unit,是由Google公司开发的專用於深度学习的加速器。它被设计成个ASIC(应用特定集成电路),可延长深度学习模型的训练和推理速度。
    的头像 发表于 08-27 17:08 7369次阅读

    谷歌发布多模态Gemini大模型及新TPU系统Cloud TPU v5p

    谷歌亦发布新TPU 系统——Cloud TPU v5p,以帮助训练尖端的 AI 模型。目
    的头像 发表于 12-12 10:50 1267次阅读
    谷歌发布多模态Gemini大模型及新<b class='flag-5'>一</b>代<b class='flag-5'>TPU</b>系统Cloud <b class='flag-5'>TPU</b> v5p

    tpu材料的用途和特点

    TPU材料,即热塑性聚氨酯(Thermoplastic Polyurethane),是种聚合物材料,具有广泛的应用领域和独特的特点。 TPU材料的主要用途如下: 鞋类行业:TPU材料
    的头像 发表于 01-16 10:17 2950次阅读