昇腾计算是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算解决方案,主要包括昇腾系列处理器及硬件(核心Atlas系列)、 专为神经网络的异构计算架构CANN(Compute Architecture for Neural Networks)、AI计算框架昇思MindSpore(类似于Pytorch、Tensorflow的人工智能框架)以及应用使能平台MindX&&ModelZoo、开发工具链MindStudio、管理运维工具、行业应用及服务等全产业链。下文将对标色的各部分进行大白话描述,方便小白快速理解。
昇腾系列处理器及硬件(核心Atlas系列)
昇腾系列处理器及硬件的特点:
- 昇腾系列处理器及硬件采用了自主研发的达芬奇架构,专门针对AI计算进行了优化,具有高效的矩阵运算单元、高速缓存、低精度计算支持等特点。
- 昇腾系列处理器及硬件支持多种精度计算,包括FP32、FP16、BF16、INT8、INT4等,可以根据不同的应用场景选择合适的精度,提高性能和效率。
- 昇腾系列处理器及硬件支持多种并行模式,包括数据并行、模型并行、流水线并行等,可以有效地解决大规模分布式训练和超大型模型训练的挑战。
- 上图展示了Atlas全系列产品,从AI算力服务器群到开发者用户的200系列开发者套件,Atlas系列硬件给予客户云、边、端的多方位产品及配套服务。
异构计算架构CANN
CANN是华为昇腾推出的专门针对神经网络计算场景的异构计算架构。它向上支持多种AI框架,为AI处理器和编程提供了服务,发挥了关键的承上启下的作用,是提高昇腾AI处理器计算效率的关键平台。同时,CANN针对多样化的应用场景提供了高效易用的编程接口,帮助用户快速构建基于昇腾平台的AI应用和业务。
简单来说,CANN就像一个桥梁,连接了AI算法框架和应用,为开发者提供了一个高效的工具,使得他们能够更快速、更方便地开发基于昇腾平台的AI应用和业务。
与之类似的,我们对比NVIDIA的CUDA架构,它们呈现出以下的差异:
- 支持平台不同:CUDA是NVIDIA推出的平台,只能在NVIDIA的GPU上运行;而CANN是华为推出的平台,可以在昇腾AI处理器上运行。
- 优化不同:CUDA针对通用计算进行了优化,而CANN针对AI计算进行了优化,因此CANN在AI计算方面比CUDA更高效。
- 编程接口不同:CUDA的编程接口是C/C++,而CANN的编程接口是Ascend CL。
- 支持库不同:CUDA支持多种库,如cuBLAS、cuSPARSE等,而CANN也支持多种库,如MindSpore等。