达芬奇架构依然是基于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实现数量级的提升。
具有可拓展计算、可拓展内存和可拓展互连。
图片: 
可以进行各种配置,最大配置(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
华为的达芬奇架构基于ARM,为通用处理器添加AI加速功能,如在麒麟810芯片中的应用。达芬奇核心设计理念是提高AI能效,采用3D Cube技术加速矩阵运算,支持不同配置。Ascend 910 AI芯片提供高计算密度,用于大规模分布式训练系统。架构还包括可拓展的计算、内存和互连,以及高效的内存层次结构减少DDR带宽需求。

1786

被折叠的 条评论
为什么被折叠?



