昇腾计算的基础软硬件是产业的核心,也是 AI 计算能力的来源。华为,作为昇腾计算产业生态的一员,是基础软硬件系统的核心贡献者。昇腾计算软硬件包括硬件系统、基础软件和应用使能等。
而本文介绍的 AI 系统整体架构(如图所示),则是对应与昇腾 AI 产业的全栈架构较为相似。因此这里以昇腾计算产业作为例子,来以实际工业界计算产业中的昇腾作为例子进行阐述。其他计算产业如英伟达、寒武纪、摩尔线程等全栈架构基本与 AI 系统也较为相似。
昇腾计算产业介绍
昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI 计算基础设施、行业应用及服务,包括昇腾系列处理器、系列硬件、CANN(Compute Architecture for Neural Networks,异构计算架构)、AI 计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链。
其生态包括围绕着昇腾计算技术和产品体系所开展的学术、技术、公益及商业活动,产生的知识和产品以及各种合作伙伴,主要包括原始设备制造商 OEM、原始设计制造商 ODM、 独立硬件开发商 IHV、咨询与解决方案集成商 C&SI、独立软件开发商 ISV、云服务提供商 XaaS 等。
同时,昇腾的合作伙伴体系当中还包含围绕昇腾相关产品对外提供服务交付的服务类伙伴,提供培训服务的人才联盟伙伴,提供投融资和运营服务的投融资运营伙伴等。昇腾高度重视高校的人才培养和昇腾开发者的发展,让高校和开发者成为整个昇腾生态的重要组成部分。
AI 硬件系统
如图所示为华为昇腾系列产品,覆盖边缘推理、云端推理、云端训练三大场景,昇腾计算的 AI 硬件系统主要包括有:
基于华为达芬奇内核的昇腾系列处理器等多样化 AI 算力;
基于昇腾处理器的系列硬件产品,比如嵌入式模组、板卡、小站、服务器、集群等。
昇腾AI产品包含训练和推理产品,主要产品系列如表所示,昇腾训练产品同时支持训练和推理业务,各个组件支持的产品范围请参见组件对应文档的产品支持列表。
产品系列 | 产品型号 |
---|---|
Atlas 200/300/500 推理产品 | Atlas 200 AI加速模块、Atlas 300I 推理卡(型号:3000)、Atlas 300I 推理卡(型号:3010)Atlas 500 智能小站、Atlas 200 DK 开发者套件 |
Atlas 200/500 A2推理产品 | Atlas 500 A2 智能小站、Atlas 200I DK A2 开发者套件、Atlas 200I A2 加速模块 |
Atlas 推理系列产品(配置Ascend 310P AI处理器) | Atlas 300I Pro 推理卡、Atlas 300V 视频解析卡、Atlas 300V Pro 视频解析卡、Atlas 300I Duo 推理卡、Atlas 200I SoC A1核心板 |
Atlas 推理服务器系列产品 | 1. 边缘服务器:Atlas 500 Pro 智能边缘服务器支持插入Atlas 300I 推理卡(型号:3000)、Atlas 300I Pro 推理卡、Atlas 300V 视频解析卡、Atlas 300V Pro 视频解析卡使用 2. 中心推理服务器:① Atlas 800 推理服务器(型号:3000)支持插入Atlas 300I 推理卡(型号:3000)、Atlas 300I 推理卡(型号:3010)、Atlas 300I Pro 推理卡、Atlas 300V 视频解析卡、Atlas 300V Pro 视频解析卡、Atlas 300I Duo 推理卡使用;② Atlas 800 推理服务器(型号:3010)支持插入Atlas 300I 推理卡(型号:3010)、Atlas 300I Pro 推理卡、Atlas 300V 视频解析卡、Atlas 300V Pro 视频解析卡、Atlas 300I Duo 推理卡使用 |
Atlas 训练系列产品 | Atlas 800 训练服务器(型号:9000)、Atlas 800 训练服务器(型号:9010)、Atlas 900 PoD(型号:9000)、Atlas 900T PoD Lite、Atlas 300T 训练卡(型号 9000)、Atlas 300T Pro 训练卡(型号:9000) |
Atlas A2 训练系列产品 | Atlas 800T A2 训练服务器、Atlas 900 A2 PoD 集群基础单元、Atlas 300T A2 训练卡、Atlas 200T A2 Box16 异构子框 |
昇腾产品以昇腾AI处理器的PCle(Peripheral Component Interconnect Express)的工作模式进行区分,分为RC(Root Complex)模式和EP(Endpoint)模式,如果PCle工作在主模式,可以扩展外设,则称为RC模式;如果PCle工作在从模式,则称为EP模式。
PCle工作模式 | 支持的昇腾产品 | 工作模式说明 |
---|---|---|
RC模式 | Atlas 200 AI加速模块、Atlas 200 DK 开发者套件、Atlas 200I SoC A1、Atlas 500 A2 智能小站、Atlas 200I DK A2 开发者套件、Atlas 200I A2 加速模块 | 产品的CPU直接运行用户指定的AI业务软件,接入网络摄像头、I2C传感器、SPI显示器等其他外挂设备作为从设备接入产品。 |
EP模式 | 推理产品:Atlas 500 智能小站、Atlas 200 AI加速模块、Atlas 推理系列产品(配置Ascend 310P AI处理器)、Atlas 200I A2 加速模块 | EP模式通常由Host侧作为主端,Device侧作为从端。客户的AI业务程序运行在Host系统中,昇腾产品作为Device系统以PCIe从设备接入Host系统,Host系统通过PCIe通道与Device系统交互,将AI任务加载到Device侧的昇腾AI处理器中运行。 |
EP模式 | 训练产品:Atlas 训练系列产品、Atlas A2 训练系列产品 | 同上 |
在异构计算架构中, 昇腾AI处理器与服务器的CPU通过PCIe总线连接协同工作,我们一般分别称为Device侧和Host侧。
AI 软件体系
如图所示, 从下往上昇腾计算 AI 基础软件体系主要包括有:
异构计算架构 CANN 以及对应的驱动、运行时、加速库、编译器、调试调优工具、开具链 MindStudio 和各种运维管理工具等,开放给广大的开发者和客户;
AI 计算框架,包括开源的 MindSpore,以及各种业界流行的框架 PyTorch,作为生态的有机组成部分。同时,昇腾计算产业秉承开放的生态建设思路,支持各种计算框架的对接。
昇腾应用使能 MindX,可以支持上层的 ModelArts 和 HiAI 等应用使能服务,同时也可以支持第三方平台提供应用使能服务。
行业应用是面向千行百业的场景应用软件和服务,围绕昇腾计算体系,诞生了大量优秀的应用,比如互联网推荐、自然语言处理、视频分析、图像分类、目标识别、语音识别、机器人等各 Iaas Paas, SaaS 种场景。
昇腾计算产业也拥抱各种云服务场景,支持 laas,SaaS 等多种云服务模式;同时,端边云协同的能力,会原生的构建在整个技术架构中,推动昇腾计算成为全场景的 AI 基础设施。
产业价值
以“硬件开放,软件开源,使能合作伙伴”的开放生态,推动昇腾计算产业更好地发展。华为聚焦计算架构、处理器和基础软件的创新与研发。通过自有硬件和伙伴硬件相结合的方式客户提供多样化的算力选择。华为基于昇腾系列处理器,通过模组、板卡、小站、服务器、集群等丰富的产品形态,打造面向“端、边、云” 的全场景 Atlas AI 基础设施方案。
同时,华为提供 Atlas 模组、板卡等部件,使能伙伴发展基于 Atlas 部件的智能端侧、智能边缘、服务器、集群等 AI 设备。华为提供开源 AI 计算框架 MindSpore,同时也支持业界主流 AI 框架如 TensorFlow、PyTorch、Caffe 、PaddlePaddle 等,同时华为提供模型转换工具支持主流模型便捷的转换。
昇腾计算产业发展致力于将 AI 新技术的红利带到世界的每个角落,让人人充分享受 AI 带来的美好。在 AI 治理上,华为与生态、商业伙伴共同倡导向善、包容、普惠和负责任的 AI,为人类社会发展带来价值:
用得起:无论何人,何时,何地,想用就用,无所不及。
用得好:从芯片到架构,提供安全可靠的产品和服务,赋能合作伙伴和开发者,做好“黑土地”。
用得放心:开放,透明,合作,遵守各国法律法规,保证个人隐私和数据安全。
昇腾 AI 系统架构
昇腾计算中的硬件体系、基础软件、开发工具链、AI 计算框架、应用使能等如图所示,跟全书介绍的 AI 系统基本上逻辑吻合。
底层的 AI 芯片和结构体系在昇腾 AI 全栈架构中主要指具体的硬件,覆盖了端边云全场景,支持数据中心,边缘和终端测的灵活部署方式。基础软件则是对应本书中 AI 系统的编译以及 AI 计算架构,使能芯片能力,提供具体的软件计算能力。再往上的框架层则是包含 AI 推理引擎、AI 计算框架。最后上层的应用使能则是针对具体的算法和模型提供的封装等相关的接口。
为满足最大化 AI 开发和部署的灵活性,昇腾整体 AI 架构遵照如下的设计理念。
- 模块化支持端边云场景下的独立部署
- 模块之间具备相互协同能力
- 各个层之间支持独立演进
基于统一的端边云全场景框架下,与合作伙伴一起,为最终客户带来的 AI 算力平台主要有以下四点优势。
超强算力
在数据中心侧,处理边缘侧汇聚过来的海量数据和满足上亿级参数的大规模模型的深度学习需求。Atlas 训练卡可为服务器提供320 320 TFLOPS FP16 的高算力。针对更大规模需求,Atlas 集群提供256P ~ 1024P FLOPS FP16总算力,在 ResNet-50测试中,基于 ImageNet 数据集,训练时间达到目前业界最快的25.9s。在边缘侧,满足不同场景的灵活轻 25.9s。在边缘侧,满足不同场景的灵活轻量级部署的同时提供了强大算力。 Atlas 推理卡单卡算力达 88 TOPS INT8,并支持多路全高清视频实时分析。
高算力的同时,能效比同样关键。在数据中心侧,更高的能效比可大幅降低数据中心整体运营成本。具体来说,Atlas 集群作为业界首个全液冷 AI 集群,采用板级液冷、柜级风液换热器等独特设计,使数据中心 PUE(Power Usage Efficiency,能源使用效率)<1.1,节约大量电费,E 级算力集群5年节省电费超1亿元。在边缘侧,模组能效比达2 TOPS/W,适应低功耗和边缘部署需求。
全栈开放
坚持开源开放原则,目的是为了希望构建良好的产业生态,按能力分层开放。面向不同开发者提供不同开发工具和套件,使能开发者满足在极简开发和极致性能两方面的需求。
面向最上层的业务应用开发者,他们把 AI 变成服务,引入各行各业。对于这类开发者,MindX 开放支持上层的 ModelArts 和 HiAI 等应用使能服务,同时也可以支持第三方平台提供应用使能服务;MindX 也逐步提供 SDK,SDK 是面向同⼀类行业场景的完整开发工具包和对应的行业知识库,让针对一类行业的开发经验和行业知识可以积淀下来,快速复制。SDK 让开发者、ISV 只需极少量代码甚至不需要代码就可以实现 AI 的功能。
面向 AI 模型开发者,他们专注于算法开发,基于昇腾的开源框架 MindSpore 、PyTorch、 TensorFlow 和 PaddlePaddle 可以支持高效开发,同时华为提供模型转换工具支持主流模型便捷的转换到昇腾设备下。
面向算子开发者,提供了 CANN 和 MindStudio 来支持底层开发。基于统⼀编程接口Ascend C,实现分层开放能力。Ascend C 封装了内存管理、AI 任务管理、AI 任务执行、业务流、事件、图引擎等通用接口,开发者只需要掌握⼀套 API,就可以全面使用昇腾硬件的能力。同时,将开放环境与底层硬件相解耦,实现后向兼容,可以最⼤程度的保护开发者的数字资产。
使能应用
最广泛的一类行业应用开发者通常期望把 AI 当做⼀种服务,直接应用在各个行业领域中。这⼀类开发者无需理解背后用神经网络模型是什么、AI 框架是什么、资源是如何调度等技术细节。
昇腾应用使能 MindX 专门为这一类的 AI 应用开发者而设计。深度学习组件 MindX DL 和智能边缘组件 MindX Edge,支持 ModelArts、HiAI Service 及第三方应用使能平台等多种平台,可以将设备资源、算力资源统⼀的抽象、管理,被上层平台所调用,这样程序只需关注功能而不需要关注硬件的底层配置细节。
除此之外,MindX 还提供优选模型库 ModelZoo 和行业 SDK。ModelZoo 解决了模型的选型难、训练难、优化难等问题。SDK 是面向同⼀类行业场景的完整开发工具包和对应的行业知识库,让针对⼀类行业的开发经验和行业知识可以积淀下来,快速复制。SDK 让开发者、ISV 只需极少量代码甚至不需要代码就可以实现的功能。
端边云协同
端边云协同,使能全场景 AI 开发。在硬件层面,端边云设备均采用统一的华为达芬奇架构,CANN 使能各类形态硬件,如手机、摄像机,智能汽车,小站、服务器、集群等。
在软件层面,支持几乎所有主流操作系统、多种 AI 框架,让开发者⼀次开发,端边云全场景都可以灵活部署。同时,端侧的增量数据可以回传云侧实现进一步训练优化。云侧再训练后的优化模型可以直接下发端侧,中间无需转换。
在架构层面,MindSpore 是面向端、边、云全场景的 AI 计算框架,可以实现全场景自适应感知与协同,比如模型训练好后,可以根据不同硬件形态自适应生成相应大小的模型。
MindSpore 还支持在端侧直接对模型进行轻量训练,更新本地的推理参数;这样既保护了个人隐私,又提升了模型精度,实现模型“私人订制”。
昇腾未来展望
昇腾计算产业会持续推动多样化异构算力发展。随着 AI 系统架构丰富多样和 AI 应用的大规模推广,昇腾计算产业会持续的增加多种算力支持。在面对不同的应用场景,充分发挥多种算力的协同效果,达到最优的处理效率和性能。
尤其是多种加速器,比如数据与处理和后处理,多种处理器架构和内核架构等,都可能在昇腾计算中发挥算力。由应用驱动的计算架构,将成为昇腾计算发展趋势。随着产业的持续进展,当规模增大到一定程度之后,昇腾计算的底层 AI 系统会进化到更高一层的产品形态。而无论是在数据中心还是边缘场景,甚至是端测场景,高集成度的 SoC 系统会成为主要形态之一。
随着异构计算架构成为主流,可编程性和领域开发语言也会成为⼀个重要方向。复杂的异构系统,将越来越依赖智能化的编译系统来进行性能的优化。而昇腾计算体系将围绕以智能编译系统和高度自动优化的开发体系作为持续的投入。基础软件的智能化程度将获得极大的提升,通过 AI 来开发 AI 将成为可能。
昇腾计算产业的生态将会持续不断丰富。更多的高性能算法、计算加速库、SDK、行业、开发语言和工具、开发者、产品形态、合作伙伴,将会随着昇腾计算产业的发展而快速推进。
昇腾计算产业将持续推进极简易用的开发体系和极致性能的应用效果。随着计算成本和开发成本的下降以及应用的快速成熟,在行业和生活中大规模的部署昇腾计算系统将成为很快的现实。
昇腾计算在行业中的大规模落地,将对社会生产力产生极大的推进。我们认为,未来在智能制造、 机器人、虚拟人、内容生成、自动和辅助驾驶、移动互联网、智慧农业、教育、交通、能源等行业,都将受益于昇腾计算产业所带来的智能化水平提升。
安全和可信已经成为昇腾计算产业的基本功,未来,安全和可信也依然是坚强的保障。随着大规模的产品化落地,必将出现大量的安全挑战,如何应对这些挑战,则会是整个产业的重大问题。昇腾计算将把持续的安全和可信 AI 作为基础,确保 AI 可靠的服务于人类。
昇腾计算产业作为 AI 的基石,将以极简易用,让 Al 计算无处不在;以极致性能,让 Al 计算无所不及。昇腾计算产业将秉承着“把数字世界带入每个人、每个家庭、每个组织,构建万物互联的智能世界”的理念,与合作伙伴和客户一起,为美好的 AI 新时代而努力。
如果您想了解更多AI知识,与AI专业人士交流,请立即访问昇腾社区官方网站https://www.hiascend.com/ 或者深入研读《AI系统:原理与架构》一书,这里汇聚了海量的AI学习资源和实践课程,为您的AI技术成长提供强劲动力。不仅如此,您还有机会投身于全国昇腾AI创新大赛和昇腾AI开发者创享日等盛事,发现AI世界的无限奥秘~