华为发布北冥多样性计算融合架构,以解决跨算力协同难题

9月25日 , 在华为全联接2021第三日主题演讲中(点击查看2021华为全联接大会专题报道) , 华为副总裁、计算产品线总裁邓泰华正式发布北冥多样性计算融合架构(简称“北冥架构”) 。 北冥架构是为多样性计算硬件及集群打造的完整软件栈 , 可帮助开发者在多样算力环境下 , 实现与单机相同的应用开发和部署体验 , 并获得远超单一算力的应用性能 。
华为发布北冥多样性计算融合架构,以解决跨算力协同难题
文章图片
大会上 , 华为计算产品线研发总裁熊彦分享了华为在多样性计算软件栈方面的技术创新 。 他指出 , 当前多样性计算已经成为计算行业最重要的趋势 。 未来数据中心中 , 除通用算力外的各种多样性算力占比将越来越大 , 从单算力到多算力协同、从单机到集群、从传统应用到多样性融合应用 , 多样性计算系统给新型应用发展带来巨大的潜力和空间 , 同时也给开发者带来极大的挑战 。
北冥架构是为多样性计算硬件及集群打造的使能软件栈 , 简化多样性计算环境下的开发和部署 , 充分释放算力性能 。 熊彦逐一介绍了北冥架构的基础使能、应用使能、开发使能的各个组件 , 并展示了北冥架构带来的价值 。
北冥基础使能
华为发布北冥多样性计算融合架构,以解决跨算力协同难题
文章图片
熊彦指出 , 多样性计算系统给开发者带来了三大挑战:首先 , 多样性算力环境下的开发 , 往往需要使用多种编程语言和工具 , 导致开发生态碎片化 。 其次 , 同一应用在不同处理器上部署 , 代码难以重用 , 导致重复开发 。 更为重要的是 , 多种算力间缺乏协同优化手段 , 无法充分发挥系统的整体性能 。 北冥架构的基础使能软件 , 即通过毕昇C++编程语言、毕昇编译器、北冥融合加速库 , 为多样性计算系统提供通用、高效、高性能的开发能力 , 助力开发者更好地应对上述挑战 。
毕昇C++支持SYCL异构编程标准 , 实现了一种语言即可对鲲鹏、昇腾及业界主流算力进行编程 , 大大降低了开发者学习成本 。 同时 , 对不同算力的共性特征进行了抽象 , 实现一套源码在多样算力上的重用 。 毕昇C++通过单语言、单源码的开发方式 , 为开发者避免了多样性计算系统的编程复杂性 。
毕昇编译器提供跨多样算力统一编译及融合优化能力 。 它通过多指令集支持 , 实现了一套源码在鲲鹏、昇腾等算力上的统一编译 , 可直接生成融合多种算力代码的fatbin可执行程序 , 方便地在多样性计算系统上部署运行 。 毕昇编译器通过多样算力融合优化技术打破了编译器只能对单算力进行编译优化的限制 , 实现了跨算力的联合编译优化 , 在SPECACCEL基准测试中性能提升30%以上 。
北冥融合加速库则为领域关键功能加速提供基于API的编程调用 。 它兼容主流应用框架 , 实现已有应用生态的良好对接 。 北冥融合加速库为多算力提供统一的API接口 , 支持AI+大数据、HPC+AI、HPDA等融合应用 。 同时 , 通过业界独有的多算力协同能力 , 实现了加速库性能的大幅提升 。
北冥应用使能
华为发布北冥多样性计算融合架构,以解决跨算力协同难题
文章图片
在多样性计算集群上开发融合应用 , 开发者不仅要面对大规模并行应用开发的复杂性 , 还需要解决融合应用跨算力部署的难题 。 更为挑战的是 , 从单算力到多样算力 , 从单机到集群 , 应用的全栈性能优化变得极其复杂和困难 。 北冥架构通过多瑙统一调度器、元戎分布式并行开发框架、昇思科学计算套件 , 帮助开发者实现分布式应用的极简开发、融合应用的高效部署以及多样性计算系统的全栈效能最优 。