深扒英伟达安培新架构,五大技术新招刀刀见血( 三 )
为了确保计算引擎得到充分利用 , 则需要更好的存储能力 。 GA100架构图左右两侧有6个HBM2内存模块 , 每个HBM2内存模块对应两个512-bit内存控制器 。
A100 GPU中有5个高速HBM2内存模块、10个内存控制器 , 容量达40GB , 显存带宽达到1.555 TB/s , 较上一代高出近70% 。
A100的片上存储空间也变得更大 , 包括40MB的L2 cache , 较上一代大7倍 。
文章图片
A100 L2 cache可提供的读取带宽是V100的2.3倍 , 因而能以比从HBM2内存读写高得多的速度缓存和重复访问更大的数据集和模型 。 L2 cache residency control被用于优化容量利用率 , 可以管理数据以保存或从缓存中删除数据 。
为了提高效率和增强可扩展性 , A100增加了计算数据压缩 , 可节省高达4倍的DRAM读/写带宽、4倍的L2读带宽和2倍的L2容量 。
此外 , NVIDIA通过将L1 cache和shared memory单元结合到一个内存块的方式来提高内存访问的性能 , 同时简化了编程和调优步骤 , 并降低软件的复杂性 。
每个SM中的L1 cache和shared memory单元总容量达192 KB , 是此前V100的1.5倍 。
文章图片
CUDA 11中还包含一个新的异步复制指令 , 可选择绕过L1 cache和寄存器文件(RF) , 直接将数据从global memory异步复制加载到shared memory中 , 从而显著提高内存复制性能 , 有效利用内存带宽并降低功耗 。
文章图片
文章图片
AI算力提升20倍是怎么实现的?
AI和HPC算力提升 , 主要归功于安培架构中采用的第三代Tensor Core 。NVIDIA第三代Tensor Core除了支持FP32和FP16外 , 通过引入新的精度TF32和FP64以加速AI及HPC应用 , 并支持混合精度BF16/FP16以及INT8、INT4、Binary 。
借由第三代Tensor Core的三类新特性 , A100 GPU的单精度AI训练和AI推理峰值算力均为上一代的20倍 , HPC峰值算力为上一代的2.5倍 。
文章图片
▲A100 vs V100峰值性能
1、TF32和混合精度BF16/FP16
TensorFloat-32(TF32)是NVIDIA A100中用于处理矩阵数学(即张量运算)的新数值格式 , 矩阵数学在AI及部分HPC运算中很常用 。
随着AI网络和数据集持续扩张 , 算力需求与日俱增 , 研究人员尝试用较低精度的数学计算来提升性能 , 但此前这样做需要调整一些代码 , 而新精度TF32既做到性能提升 , 同时又无需更改任务代码 。
新精度TF32与FP32一样都拥有8个指数位 , 能支持相同的数字范围;尾数位和FP16一样是10个 , 精度水平高于AI工作负载要求 。