异构融合计算发展趋势是什么?

异构融合计算发展趋势是什么?

最佳答案 匿名用户编辑于2023/10/08 15:48

从同构走向异构,再进一步走向异构融合,是计算架构从 简单到复杂的必然演进趋势。

1.通用性与高性能统一

计算架构一直存在通用和专用的矛盾,即系统越复杂,计算模式越发展快速,越需要 通用性较强的灵活计算平台;但系统算力需求越来越高,就需要尽可能把业务逻辑固化成 硬件加速电路,也就越需要专用性高的定制计算平台。解决这个矛盾的思路是:为不同类 型的系统内计算工作任务,匹配最合适的计算处理器类型,同时不同的计算处理器组成完 整的通用性较强的整体系统。通俗的讲,就是通过工作任务专业分工,实现系统整体性能 最优。

系统可以看作是多项工作任务的组合,这些工作任务虽然各有特点,但整体上具备 “二八定律”的特点,即不同系统中大约 80%的工作任务是相似甚至相同的。针对任务的 这一特点,把任务进行分类: 任务相对确定,比如虚拟化、网络、存储等,这些可以称为基础设施型任务。这类 任务因为其确定性的特点,适合 DSA 和 ASIC 级别的加速处理器处理。  任务部分确定,通常是性能敏感的业务应用任务,比如 AI 训练、视频图形处理、语 音处理等。这类任务具有一定的确定性,但通常还是需要平台的一些弹性的能力,其灵活 性要求相对较高。因此比较适合 GPU、FPGA 这样的处理器平台。  任务不确定,难以确定的业务应用,适合选用 CPU 平台。以及难以加速或者不存 在合适加速处理器的工作任务都可以由 CPU 平台处理。 针对不同任务的灵活性/性能特征,把任务划分到这三个层次,然后采取各自特征能力 相符的处理器平台,可以做到满足整个系统通用灵活性的同时,又可以实现最佳性能。

2.计算架构走向收敛

从 CPU 到 ASIC,从左向右,处理器的类型越多,架构的数量和种类也越多。不同类 型、不同领域、不同场景、不同厂家、不同架构的处理器,如果不加以约束,会导致处理 器架构的完全碎片化,进而增加异构融合的难度。

异构融合计算,会面临多种处理器类型和架构;并且,随着云网边端逐渐走向融合, 只有统一的系统架构接口,才能实现多种异构资源的协同,从而实现资源池化和平台融合。 基于异构融合计算的理念,各类处理器架构才会逐步由定制化、碎片化走向收敛和开放, 实现标准统一的开放架构,有助于促进形成行业统一的开放生态。

3.编程复杂度降低

串行计算架构符合人类逻辑思维,编程相对简单;同构并行计算架构的编程,就要复 杂很多;异构并行计算,则是难度进一步提升;那么异构融合计算,便是难度大幅提升。 要想推动异构融合计算的编程适配,核心的思路跟异构计算架构一致,就是要简化异 构融合系统的编程复杂度,降低开发者的使用门槛,一些可能的办法如下:

方法一,依据灵活性进行系统工作任务分类;  方法二,通过开放标准的架构让架构数量逐渐收敛;  方法三,系统分解,复杂的大系统可分解成若干个简单的小系统,针对分解后的小 系统,则可以更加容易的进行编程;  方法四,软硬件融合,软件迭代非常快,两个月一个小版本迭代,半年一个大版本 迭代;而硬件开发难度越来越大,开发周期 1-3 年,生命周期 5-8 年;硬件的迭代周期完 全跟不上软件的更新节奏。需要更进一步的系统架构创新,把传统的软件层面的能力(如 功能扩展性、资源弹性和扩展、完全硬件虚拟化、硬件高可用等),融入到硬件中去。通 过软硬件融合,来整体的提升硬件的灵活性,优化硬件的迭代周期,让硬件迭代和软件迭 代更加匹配;  方法五,构建功能强大的异构融合计算开发框架。

4.基础组件优化

常规的系统栈是分层的,即系统的多个基础组件组成单个系统层,多个系统层再组织 成系统栈。异构融合计算的软硬件系统栈,是在纵向的单个异构软硬件系统栈的基础上, 进行的横向整合和优化。单个纵向的异构计算软硬件系统栈性能,决定了异构融合系统最 终的效果,因此需要针对纵向的异构计算软硬件系统栈进行全栈优化。

 

以人工智能领域为例。随着人工智能技术的快速发展,基于自研芯片算力服务平台进 行训练已经成为趋势。然而,这种训练方式不可避免地会带来更多的移植与调优工作。在 这个过程中,除了在集群、并行策略、算子和工具包等方面的优化外,还需要完成包括 DeepSpeed/Megatron/Colossal-AI/apex 等必要组件的适配工作。为了保证程序能够正常运行, 程序系统调度也需要进行调整,包括操作系统配置和网络协议参数等。其中训练的优化工 作主要包含以下三个方面:

首先是算子层面的优化。这包括使用算子融合和算子优化等技术,深度挖掘硬件性 能,提升硬件使用率。通过这种方式,可以更有效地利用硬件资源,提高训练效率。  其次是策略层面的优化。这包括采用模型并行、数据并行、流水线并行、Zero 化等 多级并行策略,实现超大规模训练。这样不仅可以提高训练速度,还可以扩大模型的规模, 提高模型的性能。  最后是集群层面的优化。这包括针对硬件的拓扑结构,对分布式训练通信、并行分 组配比等进行定制优化,提升训练扩展比。这样可以进一步提高训练效率,扩大训练规模。

在针对每一个纵向的单个异构系统全栈优化的基础上,进一步对横向的整个异构融合 系统进行全栈协同优化。异构融合全栈协同优化将帮助我们更好地利用硬件资源,提高系 统整体性能和效率,为实现更加强大的系统奠定基础。

参考报告REPORT

云计算-异构融合计算技术白皮书(2023年).pdf

异构融合计算技术白皮书(2023年)近年来,自动驾驶、元宇宙、人工智能等应用不断创新发展,数据规模、算法复杂度以及算力需求爆发式增长。各类加速处理器已成为算力基础设施的重要组件,基于CPU+xPU的异构计算系统逐渐成为各算力场景的主流架构。然而,随着异构计算系统的种类和数量越来越多,xPU性能与灵活性难以兼顾、各xPU间计算孤岛问题难以协同、调试和维护成本增高等问题愈发凸显,亟需从异构融合计算方向加强理论研究和实践探索。以人工智能发展为例,NatureElectronics期刊在2022年4月的一篇文章显示:从2018年开始,随着AI大模型应用的涌现,算力需求平均每2个月翻一倍;摩根士丹利估计...

我来回答
分享至