我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 1984|回复: 5

[零组件/半导体] 破解华为达芬奇架构的密码

[复制链接]
  • TA的每日心情

    2024-9-29 10:35
  • 签到天数: 68 天

    [LV.6]常住居民II

    1万

    主题

    8193

    回帖

    5万

    积分

    三级逆天

    积分
    53625

    终身成就奖特殊贡献奖原创先锋奖金点子奖优秀斑竹奖宣传大使奖

    发表于 2019-8-31 09:02:53 | 显示全部楼层 |阅读模式
    达芬奇架构依然基于Arm架构,是在Arm架构基础之上研发的AI硬件处理单元,它不是替代Arm处理器,而是与之配合,为通用处理器添加AI加速器功能。华为的麒麟810芯片采用的是达芬奇NPU,也就是传统的Arm核+AI加速器的模式。当然,这个AI加速器是达芬奇NPU的核心,它把MAC按照不同的计算组成不同的方式,搭配标准的数据缓存,进行AI运算时按照cube三维立方模式组织的MAC群支持相关运算。



    全场景全栈AI战略


    华为最近正式发布了Ascend-max系列AI芯片昇腾910,以及全场景AI框架MindSpore,进一步明确了其全场景全栈AI战略。基于华为原生全场景(all-scenario naTIve)的AI全栈解决方案包括Ascend、CANN、MindSpore、应用使能四个层次。
    • Ascend(昇腾)是基于统一、可扩展的达芬奇架构的系列化AI IP和芯片,包括Max、Mini、Lite、Tiny和Nano五个系列。
    • CANN是芯片算子库和高度自动化算子开发工具,目标是兼具最优开发效率和算子性能,以应对学术研究和行业应用的蓬勃发展。CANN 是神经网络计算架构( Compute Architecture for Neural Networks)的缩写,提供了高性能的CCE算子库,其关键组件是高度自动化算子开发工具Tensor Engine。
    • MindSpore为支持端、边、云独立和协同的统一训练和推理框架,明年将对外开源。它包括模型库、图计算和调优工具包等核心子系统,具备ML/ DL/RL的统一分布式架构,灵活的程序界面,并支持多种语言。MindSpore可以很小,也可以很大,以适应不同的环境。
    • 应用使能层是一个机器学习PaaS,提供全流程服务、分层分级API以及预集成方案,目标是满足不同开发者的独特需求,使AI的采用更加容易。ModelArts就是这种完整的全流程服务,可将模型生产所需的所有服务一站式提供,从获取数据到模型训练,直到适应变化。

    揭开达芬奇神秘面纱


    Ascend(昇腾)IP和芯片是华为全场景全栈AI战略的基石,所采用的是华为自研的达芬奇AI内核架构。这个以中世纪文艺复兴时期科学和艺术奇才达芬奇(Da Vinci)命名的AI内核架构究竟有多神奇呢?在2019 Hot Chips大会上华为揭开了达芬奇架构的神秘面纱。
    华为海思首席科学家、昇腾总架构师廖恒博士通过视频(因为美国政府限制而无法去硅谷)在今年的Hot Chips大会上介绍了华为基于达芬奇架构的AI加速器芯片、软件和系统。Ascend 910芯片主要面向数据中心的云端AI训练,在很多方面似乎已经超越英特尔和发布历史上面积最大芯片的AI芯片初创公司Cerebras,其半精度 (FP16)算力达到256 Tera-FLOPS,整数精度 (INT8) 算力达到512 Tera-OPS,达到规格算力所需功耗仅310W,低于原来的设计规格350W。华为已经把昇腾910用于实际AI训练任务。比如,在典型的ResNet50 网络的训练中,昇腾910与MindSpore配合,与现有主流训练单卡配合TensorFlow相比,显示出接近2倍的性能提升。


    图1:Ascend 910包含32个达芬奇内核 (来源:华为)


    图2:由Ascend 910驱动的AI服务器集成8颗达芬奇芯片和2颗X86 Xeon CPU(来源:华为)

    Ascend Cluster可能是当今世界上最大的分布式训练系统,把1024个最高计算密度的Ascend 910芯片连接到一个计算群集中,提供256 PetaFLOPS超高计算能力,能以前所未有的速度进行模型训练,使在几分钟或几秒钟内实现训练目标成为可能,同时结合32TB HBM,如果需要,可以更容易地开发比以前更大的新模型。

    图3:Ascend 910服务器集群性能高达512 Peta Flops(来源:华为)
    去年发布的昇腾310属于Ascend-mini系列,是华为已经投入商用的第一颗AI SoC芯片。在最大功耗仅8W的情况下,其整数精度(INT8)算力达到16Tops,半精度(FD16)算力达 到8Tops。同时,该芯片中还集成了16通道全高清视频解码器,是面向边缘计算场景最强算力的AI SoC。基于昇腾310芯片的产品和云服务已获得广泛应用。其中,基于昇腾310的MDC和很多国内外主流车企在园区巴士、新能源车、自动驾驶等场景已经深入合作。基于昇腾310的Atlas系列板卡、服务器,已经与数十家合作伙伴在智慧交通、智慧电力等数十个行业落地行业解决方案。

    图4:Ascend 310和910之性能对比(来源:华为)
    规划中的Ascend系列还包括面向PC和笔记本电脑的Lite、面向移动手机设备的Tiny,以及针对可穿戴智能设备的Nano系列IP和芯片。

    破解达芬奇密码


    华为为何选择统一架构来开发Ascend芯片?原因如下:
    • 统一架构的好处很明显:只需一次算子开发,然后可在任何场景下使用;跨场景一致开发和调试体验;更重要的是,一旦完成某个芯片的算法开发,就可顺利将其迁移到面向其它场景的其它IP或芯片上。
    • 达芬奇架构设计的核心理念:以最小的计算代价增加矩阵乘的算力,实现更高的AI能效。达芬奇架构采用3D Cube针对矩阵运算做加速,大幅提升单位功耗下的AI算力,每个AI Core可以在一个时钟周期内实现4096个MAC操作,相比传统的CPU和GPU实现数量级的提升。
    • 它具有可扩展计算、可扩展内存和可扩展互连等三大独特关键技术,使得统一架构成为可能。

    图5:达芬奇内核模块示意图 (来源:华为)

    为实现可扩展的计算能力,达芬奇架构采用了一个可扩展的Cube作为超高速矩阵计算单元,在其最大配置(16x16x16)下,一个Cube可在一个时钟周期内完成4096个FP16 MACs 运算。鉴于需要支持的巨大动态范围,16x16x16 Cube是性能和功耗的最佳平衡点。以16x16x16为中心,具有Cube Scale in功能和高效的多核堆叠功能,这样就可以使用一种架构来支持所有场景。对于那些计算能力较低的应用场景,Cube可以逐步缩小到16x16x1,这意味着在一个周期内完成256个MACs运算。这种灵活性与一套指令集结合,成功提供了计算能力和功耗的平衡。通过支持多种精度,可以最有效地执行每项任务。
    鉴于极高的计算密度,当电路全速运行时,电源的完整性变得至关重要,皮秒级电流控制技术有效地满足了这一极其关键的要求。与此同时,达芬奇Core还集成了超高位矢量处理器单元和标量处理器单元。这一多种计算设计使得达芬奇架构不仅支持矩阵以外的计算,而且可以适应未来神经网络计算类型的潜在变化。

    图6:3D Cube矩阵单元具有很高的计算密度 (来源:华为)
    为实现可扩展内存,每个达芬奇Core都配备专用SRAM,其功能固定,容量可变,适应不同的计算能力场景。所有这些存储器都设计为对低层软件显性,因此可以通过Auto-Tiling plan配合实现数据多路复用的精细控制,最终达到最佳性能和功耗平衡,以适应不同场景。
    针对数据中心应用,片上超高带宽Mesh网络将多个达芬奇Core连接在一起,保证Core之间以及Core与其它IP之间的极低延迟通信。借助带宽高达4TByte/s的 L2 Buffer和1.2TByte/s HBM,高密度计算Core的性能得到充分利用。通过使用2.5D封装工艺,Ascend 910芯片集成了8个裸片,包括计算、HBM和IO。

    图7:Ascend 910裸片布局和整体尺寸 (来源:华为)

    图8:Ascend 910 NoC拓扑结构(来源:华为)


    达芬奇与Arm架构之区别


    华为自研的达芬奇架构与处理器通用架构Arm有什么区别?简单地说,其实就是二维图与三维图的区别。
    达芬奇架构依然基于Arm架构,是在Arm架构基础之上研发的AI硬件处理单元,它不是替代Arm处理器,而是与之配合,为通用处理器添加AI加速器功能。华为的麒麟810芯片采用的是达芬奇NPU,也就是传统的Arm核+AI加速器的模式。当然,这个AI加速器是达芬奇NPU的核心,它把MAC按照不同的计算组成不同的方式,搭配标准的数据缓存,进行AI运算时按照cube三维立方模式组织的MAC群支持相关运算。
    虽然是基于Arm核心,但是达芬奇仍然是华为的自研架构,华为已经购买了ARMv8永久的架构授权,华为会持续在ARMv8架构基础上进行研发,对该架构独立完成升级工作,自研的达芬奇架构也会逐渐形成独立的体系,支持自家的Ascend系列芯片,甚至授权给AI芯片设计公司以针对特定应用开发相应的芯片方案。

    图9:Ascend 310、910与Kunpeng 920的尺寸对比 (来源:华为)
    此外,华为基于Arm架构开发的鲲鹏920服务器芯片已经在其泰山服务器中投入商用,用于华为自己的数据中心和其它企业级数据中心。笔者认为,华为无意跟Arm、Intel或英伟达竞争去单独销售芯片,更多的是将其芯片作为客户定制的系统方案的有机组成部分而销售。

    达芬奇与RISC-V架构


    在中美贸易摩擦和科技冷战的大背景下,RISC-V开源架构得到了国内从政府、高校、企业到投资机构的高度重视,俨然成了中国发展自主半导体产业的助力器。最近,阿里平头哥和兆易创新等中国IC设计公司纷纷推出基于RISC-V的AI芯片或通用MCU处理器,更是加速了RISC-V在国内的发展势头。虽然华为海思还没有发布基于RISC-V的芯片,但笔者相信他们一定是在研发中,如何权衡RISC-V、Arm及其自己的达芬奇架构以便系统地开发完整的AI加速器和处理器方案,这或许是华为海思的工程师们在思考的问题。

    结语


    华为基于Arm架构,根据AI战略的需要而开发出独特的达芬奇架构,这种既可满足未来需求又兼容当前主流标准的研发策略将助力华为在一个统一的架构下,推出一系列内核IP、芯片、AI加速卡、AI服务器及集群,提供从IoT设备、便携式移动终端、边缘计算设备到云端服务器在内的完整解决方案,从而为其全场景全栈AI战略奠定坚实的基础。
    回复

    使用道具 举报

    该用户从未签到

    19

    主题

    759

    回帖

    0

    积分

    PADS-180305高级班

    积分
    0

    终身成就奖

    发表于 2019-8-31 11:26:18 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    昨天 16:17
  • 签到天数: 101 天

    [LV.6]常住居民II

    3

    主题

    3734

    回帖

    4549

    积分

    二级逆天

    积分
    4549

    终身成就奖优秀斑竹奖

    QQ
    发表于 2019-8-31 11:32:02 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    19

    主题

    1829

    回帖

    4431

    积分

    PADS-2021国庆特训班

    积分
    4431

    终身成就奖特殊贡献奖优秀斑竹奖

    发表于 2019-8-31 15:14:22 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    562

    回帖

    0

    积分

    二级逆天

    积分
    0

    社区居民终身成就奖

    QQ
    发表于 2019-8-31 17:49:57 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    5014

    回帖

    16

    积分

    二级逆天

    积分
    16

    社区居民终身成就奖优秀斑竹奖

    QQ
    发表于 2019-8-31 20:57:41 | 显示全部楼层
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    论坛开启做任务可以
    额外奖励金币快速赚
    积分升级了


    Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

    本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

    平平安安
    TOP
    快速回复 返回顶部 返回列表