华为达芬奇

达芬奇架构依然是基于ARM架构,是在ARM架构的基础上研发的AI硬件处理单位,它不是ARM处理器, 而是与之配合,为通用处理器添加AI加速器功能。华为的麒麟810芯片采用的是达芬奇NPU,也就是传统的ARM核+AI加速器的模式。当然,这个AI加速器是达芬奇NPU的核心,他把MAC按照不同的计算组成不同的方式,搭配标准的数据缓存,进行AI运算时按照cube三维立体模式组织的MAC群支持相关运算。

ARM架构

ARM架构,高级精简指令集机器(Advanced RISC Machine,更早称为Acorn精简指令集机器,Acorn RISC Machine),是一个精简指令集(RISC)处理器架构家族,其广泛地使用在许多嵌入式系统设计。

版本 支持运算 指令集
v3-v7 32位空间和32位算数运算 大部分架构的指令为定长32bit(Thumb指令集支持变长的指令集,提供对32位和16位指令集的支持)
v8-A 添加了对64bit空间和64位算术运算的支持 更新了32位定长指令集

华为原生全场景

华为原生全场景(all-scenario native)的AI全栈解决方案

模块 功能 成品
Ascend(昇腾) 基于统一、可拓展的达芬奇架构的系列化AI IP和芯片 Max,Mini,Lite,Tiny,Nano
CANN 芯片算子库和高度自动化算子开发工具,目标是兼具最优开发效率和算子性能,以应对学术研究和行业应用的蓬勃发展 CCE算子库,关键组件:高度自动化算子开发工具:Tensor Engine
MindSpore 支持端、边、云独立和协同的统一训练和推理框架,包括模型库、图计算和调优工具包等核心子系统 具备ML/DL/RL的统一分布式架构
应用使能层 一个机器学习PaaS,提供全流程服务、分层分级API以及预集成方案,目标是满足不同开发者的独特需求,使得AI的采用更加容易 ModelArts
芯片 半精度算力(FP16) 整数精度(INT8) 功耗
Ascend910 256Tera-FLOPS 512Tera-OPS 310W

AI Training SoC: Ascend 910

Memory

            Da Vinci AI Core:32
            On chip:
                   L3 cache
                   On-chip Buffer 32MB
                    DDR4: 2
                   HBM2.0:  4
            Off chip:
                    DDR4 DIMM

cpu 使用 Ring Bus 拓扑
davinci 使用Mesh Bus拓扑(CGRA,LDPC/Polar,FFT)


NOC

NoC为每个core提供了读写带宽 128GBps
Inter-chip connections
3x240Gbps HCCS ports - for NUMA connections
2x100Gbps RoCE interfaces for networking

Ascend 910 AI Server

Features AI Server SPEC.
Specification 8Davinci 2Xeco CPU + 24DIMM
Performance 2PFops/Chassis,256T/AI Module
Memory 24DIMM,Up to 1.5TB
Storage 62.5inch,NVME;24TB 22.5inch,SAS/SATA,Raid1
Interface 8 * 100G Fiber 4 * PCIe IO
Power 6000W

Ascend 910 Cluster

可能是当今世界上最大的分布式训练系统,把1024个最高计算密度的Ascend 910芯片连接到一个计算群集中,提供256PetaFlops超高计算能力。结合了32TB HBM。
1024Node x 256TFlops = 256 Peta Flops
2048Node x 256TFlops = 512 Peta Flops

芯片 类型 FP16 INT8 Decode Power Process
Ascend310 Mini 8TeroFLOPS 16TeroFLOPS 16channel 8W 12nm
Ascend910 Max 256TeroFLOPS 512TeroFLOPS 128channel 350W 7+nm EUV
Ascend芯片 应用
mini 面向边缘计算场景最强算力
Lite 面向PC和笔记本电脑
Tiny 面向移动手机设备
Nano 可穿戴只能设备

达芬奇

达芬奇架构设计的核心理念:以最小的计算代价增加矩阵乘的算力,实现更高的AI能效。达芬奇架构采用3D Cube针对矩阵运算做加速,大幅度提升单位功耗下的AI算力,每个AI Core可以在一个时钟周期内实现16^3(4096)个MAC操作,与传统的CPU和GPU实现数量级的提升。
具有可拓展计算、可拓展内存和可拓展互连。

图片: 华为达芬奇_第1张图片
可以进行各种配置,最大配置(16^3)下,一个Cube可在一个时钟周期内完成4096个FP16 MACs运算。Cube可以逐步缩小到16* 16 * 1,这意味着在一个周期内完成256个MACs运算。

达芬奇Core集成了超高位矢量处理器单元和标量处理器单元。这一多种计算设计使得达芬奇架构不仅支持矩阵以外的计算,而且可以适应未来神经网络计算类型的潜在变化。

使用片上超高带宽Mesh网络将多个达芬奇Core连接在一起,保证Core之间以及Core与其他IP之间的极低延迟通信。
4TByte/s L2 Buffer
1.2TByte/s HBM

达芬奇是在Arm架构基础之上研发的AI硬件处理单元

缓存等级 功能
L0 用于存储操作数(operands)
L1 为重用的数据提供空间

Memory Hierarchy

1.通过L1,L0A,L0B对数据进行重用,减少对DDR带宽的需求
2.提供不对称的带宽,L1->L0A 带宽大于 L1->L0B带宽 因为W*H比输出通道数大

参考文献:
(1): https://www.eet-china.com/news/201908301019.html
(2): https://www.anandtech.com/show/14756/hot-chips-live-blogs-huawei-da-vinci-architecture

你可能感兴趣的:(华为达芬奇)