2023异构融合计算技术白皮书_第1页
2023异构融合计算技术白皮书_第2页
2023异构融合计算技术白皮书_第3页
2023异构融合计算技术白皮书_第4页
2023异构融合计算技术白皮书_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I编写者参编单位:浪潮电子信息产业股份有限公司、上海矩向科技有限公司、中国电信研究院、清华大学、中国科学院软件研究所、国防科技大学、复旦大学、中国长城研究院、中国电子技术标准化研究院、曙光信息产业(北京)有限公司、同方计算机有限公司、上海熠知电子科技有限公司、阿里云技术有限公司、中参编人员:杨晓明、陈平、刘建、熊婧、李冬、黄朝波、廉建芳、颜秉珩、林显成、董刚、王洲、蔡彦、陈小文、卢晶雨、任翔、刘娜、张政、李宁、崔士伟、徐扬、李璇、刘玉海、尹航、李阳、买强、张磊、张震宁、赵立新、左明敏、周鹏、戴少鹏、杨蔚才、李亚军、伍海龙、陈硕、张阳、刘占民、王佑站、版权声明:本白皮书版权属于工业和信息化部电子第五研究所及参编单位,并受法律保护。转载、摘编或利用其它方式使用本白皮书文字或者观点的,应注明“来源:工业和信息化部电子第五研究所”。违反上述声明者,将追究其相关法律责任。编者序近年来,自动驾驶、元宇宙、人工智能等应用不断创新发展,数据规模、算法复杂度以及算力需求爆发式增长。各类加速处理器已成为算力基础设施的重要组件,基于和维护成本增高等问题愈发凸显,亟需从异构融合年开始,随着AI大模型应用的涌现,算力需求平均每2个月翻一倍;摩根士丹利估计“2022年谷歌的3.3万亿次搜索,平均成本约于大模型搜索的成本是标准关键词搜索的10倍”。需求的变化和成本的约束,再加上NoC(Network-on-Chip)和SiP(SysteminP基础架构的变革。计算架构已逐渐从目前各自为政、孤岛式的异构计算,走向异构融合计算。同时,以系统设计为中心,按照应用需求来设计、定义和规划计算架构,推动多层级狭义的异构融合计算,指的是多种不同类型、不同架构处理器组成的计算架构。广义的异构融合计算,是指通过将处理器、芯片、硬件设备、操作系统、编程框架、编程语言、网络通信协议、数据中心等不同层次、不同类型的计算技术进行整合优化,以实现多种异构计算资源的高效利用。本白皮书旨在探讨异构融合计算技术的内在机制、应用场景和发展趋势,通过概述计算领域相关概念,回顾计算架构发展历程,分析了异构计算技术的发展现状及面临的主要问题,从硬件层面(芯片级、设备级)、软件层面(操作系统、编程框架)、系统层面分别提出了异构融合计算技术的探索方案及演进方向,引出了异构融合计算技术的发展趋势,并介绍了异构融合计算领域相关的实践案例。同时,指出了异构融合计算发展面临的挑战:一是,处理器架构的限制,可扩展性和灵活性难以满足,计算孤岛问题凸显;二是,当前的编程框架、编程语言、及其他编译/调试工具,不足以支撑高效的异构代码编写、优化和管理;三是,系统集成和互操作性技术要求高,难以构建统一的在此,对参与本白皮书编制的各位专家表示衷心的感谢。我们相信,白皮书将为读者提供一个新的视角和思考方式,希望读者能够结合实际应用场景,对异构融合计算相关技术进行深入探索和研究。白皮书内容,不可避免会存在诸多不足,恳请各界专家批评指正。当今,数字化技术作为科技与产业新一轮变革的核心驱动力,正在加速各行各业转型升级,一个以计算能力为基础的万物感知、万物互联、万物智能的数字经济时代正加速到来。在这一进程中,算力作为数字经济的核心生产力,由单一算力演变为多样性算力,如何实现多样性算力的高质量协同,已成为新型《异构融合计算技术白皮书》针对现有算力基础设施无法满足算力需求的问题,深入刨析了异构计算应用场景特点以及计算架构异构演进历程,提出了异构计算发展所面临的问题,引入异构融合计算的概念,并分别从硬件、软件、系统三大层面概述了异构融合趋势和关键技术,系统全面地论证了异构融合计算如何解决传统异构计算的问题,并为多样中国电信作为云网领域的中央企业,全面深入实施“云改数转”战略,充分发挥云网融合优势,与产业链上下游广泛协同,积极打造云智、训推一体,云网边端协同的分布式算力基础设施。本白皮书为算力基础设施建设和算力赋能提供了相关技术指引和参考,从基本概念到实践案例,再到未来展望和发展建议,具有较高的实践指导价值,我们相信该白皮书能够为相关企业和研究机构提供有益的启示,我们也期待我国在异构融合计算领域数字化时代,创新应用爆发式增长,传统单一架构计算平台已难以满足多样性算力需求,异构融合计算技术的提出显得尤为重要。该白皮书深入浅出地解析了异构融合计算技融合在一起,实现多种处理器的协同工作,以实现更高效、更灵活的计算能力。本白皮书通过研判芯粒级、设备级的技术融合趋势,为实现更高计算能力、更高能效比、更低算力成本的算力硬件实现,提供了一种实现方案。在软件及系统层面,阐述了硬件架构优化、操作系统优化、算法定制、统一编程框架、编译器优化等软硬件高效协同设计的思路,这一点对硬件和软件开发都具有重要的引导意义。尽管异构融合计算这一技术还存在一些挑战和问题,但随着技术的进步和应用的深入,我们可以预见异构融合计算技术将在更多领域得到应用和发展。我们有理由相信这一技术将带来更多的社会和经济效益。因此,希望未来的研究能够继续关注这一领域的发展动态,以推动异构融合计算技术的进一步创新和V计算力就是生产力,智算力就是创新力。智慧时代的大幕徐徐拉开,无论被动或主动,代表的AI应用,开启了人机结合的新篇章,它的意义不亚于蒸可以媲美人类语言的诞生!然而,AI算力的猛增,也让IT基础架构面临着前所未有的挑感谢组织方和各位参编人员,适时地推出了这份前瞻且系统的《异构融合计算技术白皮书》。从计算领域相关概念出发,系统梳理了异构计算的背景和发展历程,剖析了异构计算面临的问题,进而引出异构融合计算的提法,在硬件、软件和系统层面进行了充分阐释,最后给出了展望和建议。全文较好地遵循了以系统设计为中心的理念,结合融合架构这一发展方向,指出了异构融合计算的三条演进路径:需要在硬件层面实现芯片级和设备级的技术创新,需要在软件层面实现跨平台的编程框架和运行环境,需要在系统层面实现白皮书最大的亮点在于提出了“异构融合计算”的前瞻性概念,强调实现更深层次的协同,突破各异构系统之间的鸿沟,实现通用性和高性能的更高统一,这一观点前瞻性强,值得业界关注。异构融合计算通过多元融合的软硬件协同,实现大规模计算资源池化,更总体来说,白皮书对异构融合计算的概念阐释和技术路线给出了参考,相信在实践中还需要不断丰富和发展。希望大家能够携手并进,共同推动异构融合计算理念的传播,并在产业中得到更广泛的应用,为中国的算力产业和数字经济的发展添砖加推荐序4VI异构融合技术是一种将不同种类、不同架构、不同性能的计算或处理单元融合在一起的技术。这种技术的目标是充分利用各种硬件的优势,以实现更高的性能、能效或功能扩展。异构融合技术通常涉及不同类型的处理器、加速器、存储设备等的协同工作,以满足日益复杂的计算需求。从整体出发,“以系统为中心”是异构融合的指导思想,浪潮信息的融合架构3.0是其中的典型代表。总的来说,异构融合技术在不同领域都发挥着重要作用,帮助实现更高效、更强大的计算能力,从而推动了科学、技术和应用的发展。因此,在本白皮书中,编者详细介绍了异构融合的概念、应用场景、现有问题以及未来发展趋势。编者还从需求分析的角度出发,深入探讨了异构融合技术在不同领域的应用和需求。这些案例涉及不同领域,包括人工智能、高性能计算等,可以帮助读者更好地理解异构融合的应用和价值。总的来说,这本白皮书对异构融合技术进行了全面的介绍和分析,为读者提供了深入的了解和洞察。同时,编者也进一步探讨了异构融合技术的挑战和问题,以----赵雅倩浪潮信息体系结构研究部VII势性预警变成迫切的现实。在计算平台的半导体PPA、多层级数据访问架构、总线网络计算负载比重等方面,现有以CPU为中心的计算架构难以应对大算力、求的挑战。围绕“如何让数据每一跳都产生更多价值的高效能算力架构”科学发展问题,“异构”是指计算资源或技术具有不同的体系结构、指令集、算法、工作模式等。“融合”是指将不同种类的计算资源或技术进行组合和优化,以实现更高效、更稳定的计算效果。“异构融合”则包含硬件层面(芯片级、设备级)软件层面、系统层面的软硬件协同,既有传统软件的硬件化卸载,也有总线和网络级的融合,整体上形成多种独立的xPU计算引擎间的异构融合互补,甚至表现出一些颠覆性的架构创新,它将引领计算技术《异构融合计算技术白皮书(2023年)》首次从芯片、整机、集群各层级,系统全面的阐述了异构计算技术全栈的历史、现状和前沿探索情况。通过深入浅出的方式,作者让我们了解到异构融合计算技术在提高计算性能、降低功耗以及节约成本等方面的优势。结合实际案例分析,我们更加确信该技术在未来的发展前景。希望能引起异构计算业界对融力、数据的生产资料地位,同时云计算、领域专用架构(DSA)、开源和AIoT技术迅速崛起,种种迹象都在提醒,当前正在孕育着新一代信息技术大变革,我们必须抓住大变革硬件和计算模式有难以估量的创新发展空间。摩尔定律失效造成算力增长缓慢,这是目前信息产业面临的重要挑战,对于我们是机遇大于挑战。在后摩尔时代,产业界提出了领域专用架构(DomainSpecificArchitecture,DSA)来应长的需要。云计算的业务形态使得其可以通过将底层异构芯片进行融合、对算力进行抽象和池化,让用户更方便的使用异构芯片和DSA架构,可以操作系统系统软件迎来场景驱动的创新发展大机遇。操作系统是最为基础的系统软件,在异构芯片、DSA架构的适配,权衡计算-数据-网络的距离达到最优资源利用,实现异构融合有其不可替代的地位。在“硬件芯片+操作系统+编译器”相结合的基础上,将软硬件协同的边界拓展到运行时组件,实现硬件芯片、操作系统、编译器等的协同设计,可以说软硬件协同适配是未来信息技术的主要发展“异构融合计算技术白皮书”汇聚了领域专家的集体智慧,对计算架构演化、发展趋势、实践案例等进行了全方位的梳理,对信息技术发展具有一定的预见性,必将促使更多----杨勇龙蜥社区技术委员会主席、阿里云操作系统研在当今快速发展的技术世界中,计算领域的挑战和机遇无处不在。本白皮书深入探讨了计算领域的发展历程和关键问题,提出了异构融合作为计算发展的重要解决方案,给我众所周知,自动驾驶、元宇宙、人工智能等应用正在塑造我们的未来。然而,这些新兴技术的快速发展也带来了巨大的挑战,尤其是在算力需求方面。本白皮书详细阐述了这些挑战,强调算力成本不断上升,对企业和研究机构构成了重大挑战。白皮书中异构融合计算的概念引发了我们的思考,它为应对算力需求提供了一个行之有效的途径。通过整合多个异构计算系统,我们可以构建更强大、高效的计算架构,为未来的技术应用和创新铺此外,白皮书强调了行业共同努力和协同创新的重要性。中国科学院微电子研究所在智能计算领域积累了丰富的研究经验并取得了一系列重要成就,研究所也在积极推动跨学科合作,与其他学院、研究机构和行业合作,以推动智能计算领域的研究和创新。我们相信,只有通过全行业的合作,我们才能够应对当前和未来的计算挑战,共同推动技术的发本白皮书不仅是对计算领域的一次深入洞察,也是对未来科技趋势的一次引导。希望这份白皮书能够激发更多关于异构融合计算的讨论,为我们共同的数字化未来打下坚实的----乔树山中国科学院微电子研究所智能感知研发中心副主任X 1 1 1 2 2 3 42.1计算架构的发展历程 4 4 5 5 62.2.1异构计算技术成 62.2.2异构计算架构品 72.2.3异构编程软件逐 8 82.3.1芯片性能提升陷 82.3.2性能和灵活性难 92.3.3异构计算孤岛问 92.3.4异构计算编程框 10 12 12 12 17 21 21 24 26 28 28 32 334.1通用性与高性能统一 334.2计算架构走向收敛 344.3编程复杂度降低 344.4基础组件优化 35 365.1加强政策引导,布局 365.2构建标准体系,强化 365.3聚焦关键技术,推动 365.4加速产业变革,促进 37 3811异构计算领域相关概念1.1异构计算异构计算(HeterogeneousComputing)是指不同类型指令集和体系结构的处理器组成可以独立运行,其他加速处理器需要在CPU的协助下运行。因此,异构计算通常是指依据指令的复杂度,处理器引擎分为CPU、Coprocessor(协处理器)、GPU、FPGA、图1-1不同典型处理器间性能与灵活性对比图协处理器集成在CPU内部,用于协助CPU处理特定的计算任务;加速处理器(如l基于GPU的异构并行。GPU异构加速本质是众多并行的高效能通用处理器,通过l基于FPGA的异构并行。FPGA具备硬件弹性的特征,可以根据需要进行配置和编程,以实现不同的计算任务和算法加速,具有高并行度和高可靠性,适合进行定制计算。l基于DSA的异构并行。CPU和DSA共同构成异构计算系统,DSA可以在定制异构的目标是将任务分解为计算上同构的子任务,然后将每个子任务分配给最适合执行的计算资源(或并行模式)。异构系统通常是由使用不同类型指令集和体系架构的计算单1.2异构融合计算架构、工艺和封装,以及统一的异构计算软件。但在最核心的系统架构层次,Intel仅仅只强调了“多”,并没有进一步对超异构计算进行阐述,以及设计实现的进一步细节说“异构融合计算”是一个全新的概念,目前行业还没有形成统一的定义。从概念上讲,“异构融合计算”属于异构计算的范畴,可以定义为异构计算的一种高2本白皮书认为,狭义的“异构融合计算”,是一种新的计算架构和方法,通过融合CPU和多种不同类型、不同架构的加速处理器,以实现更大规模、更高性能、更加高效的计算。而广义的“异构融合计算”,则通过不同层次、不同类型的技l超异构:系统中异构处理器的数量为三个或三个以上。“一个称为同构,两个称为l硬件融合:强调不同处理器之间的深度协同(指单个工作任务由两个或两个以上处处理器运行,也可以跨同类型中的不同架构处理器运行)。各处理器之间可以通过高速总线或高性能网络进行通信和数据传输,通过更高层次的系统划分和任务调度实现协同计算。l软件融合:面向异构(硬件)计算环境,将操作系统、应用软件、编程模型、编程语言、通信协议、数据等技术资源进行融合和优化,提供统一的软件运行环境和编译开发l系统融合:通过合理地任务分配和资源调度,异构融合计算系统可以实现更高的计传统异构计算,特指CPU+xPU的计算架构。异构融合计算与传统异构计算的差异点在于:传统异构计算仅有一种加速处理器类型,并且仅关注CPU和加速处异构融合计算则具有两种或两种以上的加速处理器类型,并且需要重点关注所有处理器之1.3其他相关概念1.3.1ASIC与DSAASIC(Application-SpecificIntegratedCircuit,专用集制造的集成电路,与通用集成电路(GeneralPurposeIC)相比体积更小、功耗更低、成本更低。一般来说,ASIC处理引擎的指令复杂度最高,其理3差异化需求,二是纵向的单个用户的长期快速迭代需求。即使同一场景下,不Architecture,特定领域架构),可根据特定应用场景定制处理引擎甚至芯片,支持部分软件可编程。DSA的设计和实现需要考虑特定领域的特征和需求,包括算法、数据结构和最l灵活性问题:ASIC由于其功能确定,只能通过一些简单的配置控制硬l应用领域扩大:DSA支持可编程能力,使得其功能覆盖的领域范围DSA架构的处理引擎在满足系统灵活性要求的情况下,可实现最极性价比。SoC(SystemonChip,片上系统),是一种将多种电子组件集成在一个先进的电路设计和封装技术实现将不同的组件集成到一个芯片上。这种集成方式可以减少系统的体积和功耗,提高系统的可靠性和性能。同时,SoC还可以通过硬件SiP(SysteminPackage,系统级封装)是一种先进的封装技术,它能的有源电子元件与可选无源器件、MEMS(微机电系统)器件、光学器件等先组装到一起,实现一定功能的单个标准封装件,形成一个系统或者子系统。这术体现了将各种功能芯片,包括处理器、存储器等芯片集成在一个l2DSiP:这是最常见的SiP类型,通过在平面上排列多个芯片实现不同功能。这些lMIP(Multiple-chip-in-Package):MIPMEMS、光学元件等)组合在一起的技术,装尺寸和系统性能方面存在一定的区别。SiP更注重将不同功能起,实现一定功能的系统或子系统;而SoC则通过将整42异构计算的发展及问题2.1计算架构的发展历程l第一代,晶体管时代,指令集架构出现之前,计算机架构各不相同;l第二代,小规模和中等规模集成电路时代,出现支持指令集架构的CPU处l第三代,大规模和超大规模集成电路时代,指令级并行以及CISC和RISC混战;l第四代,超大规模集成电路的多核处理器并行时代;l第五代,超大规模的领域专用处理器(DSA)时代。上述计算机体系结构的时代划分,是站在单处理器引擎视角进行的。本白皮书参考上述五个时代的划分,站在多处理器引擎计算架构从简单到复杂的发展视角,提出了如下的l第一阶段,基于单核CPU的串行计算;l第二阶段,基于多核CPU的同构并行计算;2.1.1基于单核CPU的串行计算Computer),其线路必须被重设才能执行不同的程序,通常需要花费长达三周的时间。而CPU微处理器通过支持跳转、调用等控制类指令,使得计算机可以执行各种复杂的计算和CPU的这种设计理念实现了软件与硬件的解耦。即在更在这种架构中,软件开发是基于串行计算的思维,程序或问题被分解成一系列离散的指令,图2-1单核CPU串行计算示意图l指令集架构:宏观架构有精简RISC和复杂CISC路线之争。l微架构创新:CPU处理器中出现了各种各样的微架构创新技术,如处乘法/除法器等复杂执行单元、指令多发射、乱序执行、l数据位宽:处理器数据位宽从4位到8位到16位到32位,再到目前主流的64位。52.1.2基于多核CPU的同构并行计算AMD和Intel分别推出了各自的双核处理器。随着技术的创新迭代,更多的C的超高并行计算能力。图2-2多核CPU同构并行计算示意图并行计算(ParallelComputing)是通过扩大问题求解规模,解决大型而复杂的计算问题。并行计算主要分为时间上的并行和空间上的并行。时间上的并行是指流水线技术,而空间上的并行则是指用多个处理器并发的执行计算,以此扩大问题求解升受任务顺序部分的限制。阿姆达尔定律证明了处理器数量的增加带来的收益会递减。一方面受系统工作任务并行特征的约束,另一方面,受单芯片设计规模上限的约束,通过多2.1.3基于CPU+xPU的异构并行计算基于CPU+xPU的异构并行计算广泛应用于高性能计算、人工智能等领域。CPU和2006年,NVIDIA发布了第一款真正意义上的通用GPU:Tesla架构GPU;同年,NVIDIA发布了CUDA框架,这标志着基于GPU处理器并行计算的诞生。单位计算的功耗面积等成本较高;而GPU单位计算的功耗面积等成本也较低;CPU擅长处理串行任务,而GPU则更适合处理并行6),多维度的数组运算,以增强并行计算的能力。TPU独立完成整个推理模型的运算,极大地的指令缓冲区,确保数据流畅无阻。TPU的矩阵乘法单元是其计算的核心,专门用于处理性能和功耗之间的关系是决定计算设备选择的核心因素。为了满足大规模计算的需求,从CPU到GPU,再到TPU(DSA),每一个技术进步都带来了性能的显著提升。基于阵列逻辑)等可编程器件的基础上的半定制电路,或叫可编程的逻辑列阵。FPGA基本结构包括可编程输入输出单元、可配置逻辑块、数字时钟管理模块、内嵌专用硬核,底层内相比,FPGA提供了更大的硬件灵活性,允许开发者根据需要进行硬件编程和定制。这样的灵活性弥补了定制电路的一些局限性,同时具备比传统可编程逻辑更高的逻辑门数量,CGRA可重构计算(Coarse-grainedR的并行计算架构,它通过空域硬件结构组织不同粒度和功能的计算资源。与传统的指令驱动计算架构不同,CGRA在运行时根据数据流的特点进行硬件配置,让计算资源形成相对固定的计算通路,从而以接近“专用电路”的方式并行计算。这种结构既减少了取指和译码的延时及能耗,又能以专用电路的方式高效执行。当面临不同的算法和应用时,可以通过2.2异构计算技术蓬勃发展2.2.1异构计算技术成为主流处理器性能平均每2年翻一番;随着登纳德缩放定律的逐渐失效、阿姆达尔定律的充分挖的硅面积,算力密度低,运算单元少,不适合人工智能领域的高并发密集的向量、张量计7当前,人工智能领域主要采用CPU+xPU(GPU/F异构计算技术已经成为超级计算机、嵌入式系统、人工智能等领域的主流计算模式,未来2.2.2异构计算架构品类众多场景(Scenario)是领域(Domain)的子集。比如AES加解密是一个具体的场景因此,针对不同类型处理器的领域和场景覆盖,我们可以得到异构计算架构的品类众多,并且不同的品类具体的架构实现也不尽相同。按照不同的l基于GPU的异构:头部厂商占据了主要市场,GPl基于DSA/ASIC的异构:面向应用领域和场景各异、每个厂商芯片架构实现的方式各异;甚至,由于业务迭代的影响,同一个厂家不同代产品的架构也有可DSA/ASIC异构里,异构计算架构8在体系结构的黄金年代,异构处理器多样化是时代的潮流。在众多异构计算架构中,如何实现平衡性能与灵活性,并从系统层面上以更低的成本获取更大的算力、更多的领域2.2.3异构编程软件逐渐成熟随着异构计算的发展和广泛应用,异构编程技术也逐渐成熟。异构编程是指通过编写软件来调度异构计算平台进行计算,其成熟性主要体现在在平台支持方面,主流的异构计算平台都提供了相应的开发工具和编程模型,以支持异构编程。例如,NVIDIA提供的CUDA编程模型;Xi在编程模型方面,针对异构计算的编程模型也在不断完善和发展。传统的编程模型如寒武纪的MagicMind等。这些编程模型提供了更高层次构编程的难度,同时充分发挥了异构计算的优势,目的是让开发者可以更加轻松地进行异在优化工具和框架方面,为了提高异构计算的效率,研究人员和厂商们开发了各种优化工具和框架。这些工具和框架提供了各种编译、调度、调试和优化的功能,以帮助开发用于性能分析和调试;与FPGA相关的优简而言之,越来越多的案例表明了异构编程正在逐渐成熟,不仅有全栈的软硬件平台2.3异构计算技术演进困境异构计算技术已经广泛应用于多个领域,如云计算、边缘计算、高性能计算等。但异构计算也逐渐面临性能瓶颈问题,同时面临性能和灵活性难以兼顾、编程框架不统一等问2.3.1芯片性能提升陷入瓶颈升一倍。单个异构计算设备的性能提升有限,只能通过扩大计算集群规模的方式来满足算力快速提升的需求。然而,受限于集群效率,目前上千台服务器和上万张GPU加速卡的单个计算芯片的性能提升已经陷入瓶颈,主要有如下l摩尔定律放缓:随着制程工艺不断缩小,摩尔定律的推进速度已经放缓,单纯依靠l能源和散热限制:随着芯片制程工艺的进步,晶体管的体积不断缩小,但同时也带来了更高的功耗和热量产生。在有限的能源和散热条件下,单纯追求性能提升将导致芯片l软件和硬件的协同优化不足:为了充分发挥硬件性能,需要与之相应的软件和算法支持。但在实际应用中,软件和硬件之间的协同优化并不总是能够实现,导致部分硬件性9l阿姆达尔定律的原则:并行性的理论性能提升受任务顺序部分的限制。在优化计算机系统性能时,不仅需要考虑单个处理器的性能,还需要考虑如何并行化计算任务,以充分利用多核处理器的优势。也因此,通过多核并行来提升综合性能的收益也在逐渐递减。为了突破性能瓶颈,未来的计算技术需要从多层次、多方面进行创新,包括新型计算2.3.2性能和灵活性难以兼顾性能与灵活性在不同的加速处理器上呈现出不同的特l性能优越:DSA技术通过将多个处理器核心连接到一个共享内存区域,实现了处理器之间的高效数据交换和协作。这使得DSA在处理大规模数据和复杂任务时l灵活性高:DSA技术可以根据实际应用需求,灵活配置处理器核心和内存资源的比例,以满足不同场景下性能和资源需求的平衡。此外,DSA还支持动态地添加或删除处理l易于扩展:DSA技术具有良好的可扩展性,可以通过增加处理器核心数量来提高系l容错能力强:DSA技术采用了冗余设计,当系统中某个处理器核心出现故障时,其他核心可以接管其任务,保证整个系统的正l适用范围有限:由于DSA技术针对特定领域进行优化,因此其在非定制领域的适l开发和维护成本高:为了充分发挥DSA的性能优势,需要针对具体应用进行优化和适配。这意味着开发者需要投入更多的精力进行硬件和软件设计,提高了开发和维护成本。l技术成熟度较低:相较于传统架构,DSA的技术成熟度较低。在实际应用中,可能l兼容性问题:由于DSA技术采用了特定领域的定制设计,可能导致与其他硬件和软件系统的兼容性问题。在使用过程中,可能需要额外的适配和优化工在异构计算中,不同的处理器各有优势和劣势,选择最适合的处理器取决于特定应用的性能和灵活性需求。尽管DSA提供了一种介于高性能ASIC和灵活的通用处理器之间的解决方案,但其在某些迅速变化的领域中仍面临着挑战。未来的技术研究应集中在如何实2.3.3异构计算孤岛问题突显随着异构计算在各领域的应用落地,多异构共存的异构计算孤岛问题也逐渐突显。多异构计算的硬件层次高集成度和系统软件层次多协同、通用编程模型和开发环境,已成为图2-4从同构到异构再到多异构的演进l各领域加速器难以全局协同:不同的加速器在处理特定领域的问题时表现出色,但相互协同能力差,可能导致系统整体的性能下降。协同能力差主要体现在两个方面:不同的加速器的存储器和内存管理机制不同,导致数据访问和传输方式复杂,数据通路难以协同;多个加速器的控制机制不同,导致它们之间的同步和协调,需要复杂的并行控制机制l各领域加速器之间交互困难:不同类型的加速器之间进行通信和数据交换需要使用特定的接口和机制,增加了开发的复杂性和难度;频繁大量的通信和数据交换,导致数据l中心单元的性能瓶颈问题:在异构系统中,通常有一个中心单元(如CPU、DPU)负责协调和管理其他硬件加速器的工作。然而,当加速器数量增多或任务复杂度增加时,l物理空间无法容纳多个异构加速卡:由于物理空间的限制,系统中只能容纳有限数2.3.4异构计算编程框架各异不同的异构计算编程框架都拥有其独特的特性和适用环境,开发者在编写程序时需要依据实际需求和硬件设备选择最适合的框架。由于硬件的独特性质,每种硬件都配备了专例如,CUDA是由NVIDIA推出的并行计算平台和编程模型,它允许开发者利用加速的并行计算。AmpxAI是由AMD开发的基于Python的并行计算库,可在AMD的GPU上实现高效的计算。这就要求开发者掌握多种编程模型和语言,使得代码移植面临巨大的挑战。例如,专即使有统一编程模型的支持,要实现高效的代码仍需要针对特定硬件进行手动优化,这无疑增加了编程的复杂性和开发周期。虽然业界提出了多种方法试图建立统一的异构计算编程框架,以简化开发过程并解决这些挑战,但至今仍未找到完美的解决方案。因此,寻找一个真正统一、能满足所有硬件和应用需求的编程方法,仍然是计算领域的热门研究3异构融合计算技术探索随着计算模式从集中式的单节点计算逐渐走向分布式的多节点协同计算,计算系统变得越来越复杂。异构融合计算技术,不仅仅需要芯片级、设备级等硬件层面技术的支撑,还需要操作系统、编程框架以及跨平台等多种软件层面技术的支持,以及数据中心和新型计算模式等系统层面技术的全力配合。通过整个系统的全方位软硬件协同工作,来达到异3.1硬件层面融合技术探索3.1.1芯片级融合计算架构2015之后,摩尔定律逐渐放缓,集成电路发展进入后摩尔时代,集成电路的整体发展l“MoreMoore”:延续摩尔定律,在缩小尺寸的同时,集成更多的组件,实现功能l“MorethanMoore”:扩展摩尔定律,通过先进封装技术,把不同的功能组件封装l“BeyondMoore”:超越摩尔定律,探索量子计算、类脑计算、电子器件等新型半l“MuchMoore”:丰富摩尔定律,随着计算机学与物理学、数学、化学、生物学等其中,“BeyondMoore”和“MuchMoore”属于更加前沿术、SoC验证技术、可测性设计技术、低功耗设计技术、超深亚微米电路实现技术等。SoC设计技术可以降低系统板上因信号在多个芯片之间进出带来的延迟而导致的性能局限,NoC是目前大规模芯片内部互联的最主要通信架构,通过芯片内实现类似于网构,包括目标的处理单元(PE)、交换节点(routers)和互连线(wires),这种互联结构相比传统交叉开关(Crossbar)总线具有可扩展性好、并发性强等特点。随着SoC集成度越来越高,NoC拓扑结构主要有两种,直接型拓扑结构:所有的路由节点均与计算资源相连,并通过双向链路直接连接。常(Hypercube)NoC。网络是由交换节点和互连线构成的,每个节点连接一个处理单元(RE)和上下左右四个相邻的路由器,每个处理单元通过一个网络接口(Net-InterfaceNI)连接着一个路由器。其中的处理单元可以是处理器核、内存、用户自定义硬件模块或者其他任何可以插入插槽并且可以和网络接口相配的IP(IntellectualProperty路由器之间,路由器和资源之间是由一对输入和输出通道连接。通道是由两条单向的点对点总线组成。2D网格型(Mesh)是典型的直接型NoC拓扑,如图3-2所示:各个路由节点之间不一定是直接通过双向链路相连接,而可能是通过这些专门的开关节点一颗芯片的晶体管数量为百万级至百亿级不等;另一方面,SoC可以运行处理多任务的复移植性等特点。在SoC芯片研发过程中,研发人员SiP是从封装的立场出发,对不同芯片进行并排或叠加的方式封装,将多个具有不同功能的有源电子元件与可选无源器件,以及诸如MEMS或者光学器件等其行分解,然后开发出多种具有单一特定功能、可相互进行模块化组装的裸芯片(如实现了数据存储、计算、信号处理、数据流管理等功能),再将这些模块化的芯粒(裸片)互联起来,采用新型封装技术,将不同功能不同工艺制造的芯粒封装在一起,成为一个异构集Chiplet芯片设计具备三大优势:快速开发、低成本、多功能;借助先进的封装技术,芯粒可以集成各种不同的架构、不同的工艺节点,特定设计部分选择最先进的技术,而在其他部分选择更成熟、更廉价的技术,从而节省整AI加速器等不同处理元素任意组合,为各种应用需求提供更丰富的加速选项。Chiplet封装主要分为2.5D封装l2.5D封装:横向堆叠芯片,在传统的地基上增加硅中介层(interproser),把芯片之间、芯片与存储之间的连线封装在硅中介层中,可提供近似在同一个芯片内的互联性能。GPU与CPU。代表技术有台积电的CoWoS、英特尔的EMIB。l3D封装:纵向堆叠芯片,不同于2.5D封装,3D封装是一种晶圆对晶圆(Wafer-On-Wafer)无凸起的键合(Bonding)技术,在垂直方向上堆叠芯片和存储,各层通过硅通量,MI300A则把CPU和GPU通过3D装的技术,构建更高效、更经济的芯片系统。这种设计方法简化了芯片设计的复杂性,而晶圆融合技术核心设计理念:在这种架构中,充分利用晶圆了适应大规模的计算需求,重点放在了系统的晶圆内互联上,而不再追求单核的超高性能。l轻量级计算核心/处理单元(PE):架构采用轻量级的计算核心,不再追求每个核心l片上/片间互联(NoC/NoP):架构使用对称互联方式,减少了不同层级之间的带宽逐l存储层次:架构在内存层次结构上采用了非一致性内存访问(NUMA)架构,结合l集群互联:从基于芯片的3D拓扑结构转向基于晶圆的2D拓扑结构,这l硬件冗余设计和PartialGood策略:由于晶圆级l硬件Defect处理:针对晶圆级制造过程中可能出现的硬件缺陷,这种架构采取了一根据算力的快速增长需求,以及异构融合的发展大趋势,作为芯片设计集成/融合的主l异构系统支持:多种类型的处理器和加速器的异构系统正在普及。NOC技术能够l更高的集成度:随着芯片制造技术的进步,芯片上可以集成更多不同类型的处理器核心、存储单元和功能模块。NOC技术将面临更高的集成度l更高的带宽和更低的延迟:新型应用对数据传输带宽和延迟要求更高。NOC技术将朝着提供更高的带宽和更低的通信延迟方向l可编程性和灵活性:越来越多的应用场景需要定制的处理器/加速器,因此NOC技术需要更大的可编程性,以适应不同类型的处理器和l能耗和功耗优化:NOC技术需要在提供高性能的同时,优化能源效率,减少功耗。l异构系统支持:多种类型的处理器和加速器的异构系统正在普及。NOC技术需要l安全性和可靠性:随着互联网的普及,芯片的安全性和可靠性变得尤为重要。NOCl虚拟化和云计算:NOC技术需要支持虚拟化和资源共享,以便多个应用程序在同l机器学习和自适应性:机器学习技术可以应用于NOC,以优化通信路由、动态调总之,NOC技术的发展趋势将主要关注高度异构集成、高带宽低延迟、灵活性、能源效率、安全性和适应性。随着新的应用场景的出现,NOC技术将按照上述发展趋势持续在工艺进步日益走向物理极限的今天,多种异构芯粒的封装逐渐成为芯片规模持续提l异构融合:Chiplet技术为异构融合提供了可能性,其中不同类型的芯粒可以集成在l模块化设计和快速迭代:Chiplet技术允许不同芯粒独立设计和迭代。这使得芯片设l多样化和定制化:Chiplet技术使得不同功能的芯粒可以由不同的制造商生产,从而l高性能和能效:Chiplet技术使得不同芯粒可以根据其特定要求进行优化。如,一个处理器块可以专门针对高性能,而一个存储块可以专l集成性能提升:通过将不同功能的芯粒组合在一起,芯片可以实现更高的整体性能。例如,一个芯片可以将高性能处理器芯粒与专门的加速器芯粒相结合,以提高特定工l低成本制造:Chiplet技术允许将不同芯粒制造在不同的制造工艺上,从而降低制造成本。例如,高性能处理器块可以使用先进的制造工艺,而辅助模块可以使用更l应用领域扩展:Chiplet技术不仅可以用于传统的计算领域,还可以应用于物联网、综合来看,Chiplet技术的发展趋势包括模块化设计、高性能、能效、低成本制造、标准化和应用领域扩展。这些趋势均有利于推动芯片设计和制造的变革,走向异构融合,为晶圆级芯片技术能够在晶圆级别上实现多种异构计算核心的融合,晶圆级芯片技术发l更大规模的集成:晶圆级融合计算架构的发展带来更大规模的集成电路,将更多的计算核心、内存、和互连集成到单个芯片或l优化的通信架构:随着集成度的增加,未来的发展可能会着重优化晶圆级芯片内部l能效和散热:随着集成度的增加,未来的发展可能会关注如何在更大规模的晶圆级芯片上实现高性能计算的同时保持合理的能总的而言,随着芯片系统的规模增大,不断增加的计算单元数量,性能提升的主要瓶颈。为了适应大规模的计算需求,晶圆级芯片技术发展的重点放在统的晶圆内互联上,实现更高效的晶圆级异构计算。这将使得针对不同应用场景的优3.1.2设备级融合计算架构异构计算架构的融合,可以是芯片级的,也可以是设备级的。在采用现有的、非异构融合芯片的情况下,可以通过设备级多芯片融合计算,有效地获取高性能计算能力。芯片内融合的核心技术是片内总线,类似的,设备级融合的核心技术是芯片间互联的高速总线,部件互联总线)基础上把传输机制从并行改成了串行,通过使用差分信号传输,干扰可以很快被发现和纠正,从而传输频率获得大幅提升。串行PCIe还线简单,线路可以加长,甚至变成线缆连出机箱,多个Lanel处理器CPU(通过PCIeRC)访问PCIeEP;品),每一代的带宽大致上翻倍。到PCIe5.0,通过x16组总线,可以支持双向共约CXL是Intel发布的一种支持缓存一致性协议的芯片间互联总线,CXL基于PCIe内存池,通过硬件机制在加速器和处理器之间高效的共享内存,提升性能并且降低延迟,lCXL.mem协议。协议提供主机处理器使用Load/Store指令访问设备内存,主机CPU充当主设备,而设备充当从设备。并且能够支持易失性和非易CXL.io协议用于初始化和链接,因此所有CXL设备都必须支持该协议。其他两种协l类型2:包含全部三类协议CXL.io、CXL.cache和CXL.mem。用于设备也具有独立Memory的场景,这样设备可以一致性的访问主机内存,主机也可以一NVLink是NVIDIA针对GPU加速计算而开发的全新高速互联技术,它大大提升了GPU之间的通信性能,也大大提升了GPUNVLink2.0开始支持数据一致性,允许从CPU直接访问GPU内存,允许读取来自致性的硬件缓存访问,进一步的提升CPU和GPU之间的数据交互性能。最炙手可热的服务器类型。通过QPI、PCIe、NVLink等芯片间总线,在设备级实现了多种异构融合,必然是更加庞大的计算系统。通过功能强大的芯片间互联总线,实现设备级的异构融合计算系统,是一个切实可行的方式。芯片间高速互联总线,是实现设备级异构融合的关键。也因此,从异构不断融合的发展视角,必然对芯片间互联总线提出一l更快计算速度。在单芯片性能增加有限的情况下,需要异构资源协同效率的快速提l更高的带宽。除了提升单通道带宽能力之外,更需要通过更多的物理通道(Lane)l缓存一致性性能。把多个芯片或设备链接成更大的单个系统,总线缓存一致性能力l系统的更高扩展性。常见的GPU服务器,最多支持8而不是异构融合。如果要想在设备级实现完全异构融合的对等架构,势必需要采用l更高效率的总线交换机。芯片的总线带宽和通道数有限,要想在设备级实现更大数GPUNVMeSSDCPUGPUNVMeSSDCPU合CPU、GPU、其他各类DSA的计算能力,构建设备级异构融合计算加速3.2软件层面融合技术探索软件支持在异构融合计算中扮演着至关重要的角色。通过统一的软件设计,我们不仅可以提升异构融合计算的适用范围和性能,还能为后续的硬件开发提供指导。在这一部分,我们首先对异构软件优化的相关技术进行了深入分析,然后重点讨论了两大关键支持技术领域,即操作系统和编程框架。我们不仅剖析了当前国内外最先进的技术,还明确了未来3.2.1面向异构软件优化技术分析在异构融合计算的背景下,需要进行异构软件优化技术的分析,这包括针对异构计算环境中的软件应用所设计的性能优化方法和策略。异构计算环境通常综合了不同类型的处的性能特点和能力。为了确保在不同类型的计算资源上执行的软件能够以一致的方式运行,避免潜在的错误和运行不一致性问题,需要采用特定的优化技术和方法。每种硬件都有其独有的架构和性能特征。为了充分利用这些硬件资源并确保一致性,软件不仅需要能够在不同的平台上运行,而且应该尽可能的利用平台硬针对异构计算设备,统一的操作系统级开发工具链需要支持针对不同设备类型的编译、调试、链接和开发库等功能,以简化异构设备的编程和开发流程,构建一致的开发环境,在编译器方面,需要支持针对不同设备类型的编译,并为各种硬件架构生成高效的代提高程序的性能。例如,编译器可以使用向量化指令来加速程序的执在调试器方面,针对异构计算设备的调试器需要支持对不同设备类型的调试,以帮助开发人员在异构设备上查找和修复错误。例如,对于GPU,调试器需要能够准确地调试GPU代码,同时能追踪和分析GPU的内存访问和计算操作。调试器还应该提供全面的调在开发库方面,简化编程的工具和库对异构计算设备至关重要。针对异构计算设备的开发库需要提供针对不同设备类型的抽象接口和函数库,以简化异构设备的编程。例如,CUDA和OpenCL提供了针对GPU的函数库和API,帮助开发人员轻松地编写高效的GPU程序。此外,开发库还应提供丰富的示例代码和详尽的文档,以便开发人员快速上手l跨平台的编程语言和工具C/C++一种广泛用于跨平台开发的编程语言,具有高度的移植性,可以在多种硬件上编写和运行代码。Python一种高级编程语言,具有丰富的库和工具生态系统,可以通过不同的库和框架实现跨平台的计算。Java一种跨平台的编程语言,通过Java虚拟机(JVM)可以在不同操作系统上运行。OpenCL一种开放计算语言,也代表了一种异构计算标准,允许在不同类型的计算设备上进行并行编程,包括CPU、GPU和FPGA。选择合适的编程语言取决于具体的应用需求和硬件平台。关键是要确保所选编程语言l标准化API和库支持OpenMP一种支持共享内存并行编程的API,可以在不同操作系统和硬件上使用,用于多线程并行计算。CUDANVIDIA推出的用于GPU编程的平台,提供了一套标准化的API和库,用于在NVIDIAGPU上进行并行计算。OpenCL一种跨平台的异构计算标准,提供了一致的API,允许在不同硬件上执行并行计算任务。标准化的API和库可以确保在多种硬件之间实现功能一致性,并能够简化软和维护过程。此外,标准化的API和库通常由硬件制造商支持,因此可以提供最佳的算力是指计算设备在单位时间内所能完成的计算量。鉴于异构计算设备具有不同的硬件特性和架构,其在计算能力上也存在差异。不同的计算单元具有不同的计算方式和指令与CPU不同,GPU的并行计算能力非常强l基于计算密度的等价转换计算密度是指设备在单位面积或单位体积内所能完成的计算量。对于同一类型的异构设备,可以通过计算其计算单元数量、时钟频率、并行度等参数,来计算其计算密度并进行比较。对于不同类型的异构设备,可以将其计算密度转换为相同的单位l基于通用计算能力(GPGPU)指标的等价转换画为一个通用的计算指标,以便与其他类型的计算设备进行比较。常用的GPGPU指标包通过操作系统、虚拟化和容器等技术,我们可以在软件层面对底层异构算力设备(如CPU、GPU等)进行抽象和封装。这使得上层应用程序可以方便地访问和管理硬件,同时隐藏底层不同硬件设备的差异性,提供统一的计算运行时环可变粒度资源技术是实现运行一致性的关键技术。由于计算环境中的资源具有非常高的动态性和不确定性,这要求对应程序能够自动适应不同的计算负载和需求。可变粒度资源技术可以将计算资源分解为更小的粒度,并能够根据实际需求进行动态调整。这种技术可以让计算资源更加灵活地适应不同的应用程序需求,从而更好地利用资源。在云计算环境中,通常会将计算资源分解为裸金属、虚拟机、容器、函数等更小的粒度,并动态调整资源分配和使用。通过可变粒度资源技术可以更好地保证服务的可靠异构计算设备因其多样的硬件架构和接口而带来了管理、维护和安全上的挑战。为了更有效地应对这些挑战,必须提供一种综合的方法,包括统一的监控管理、运维管理、安监控管理方面,对于异构计算设备的监控,需要提供统一的监控工具,以监测异构计算设备的性能、温度、功耗等关键指标。通过对异构计算设备的监控,可以及时发现设备能分析工具,对设备的性能进行监测和分析;对于FPGA等可编程逻辑器件,可以采用逻运维管理方面,需要提供统一的运维工具,以管理和维护异构计算设备的软硬件环境。例如,通过提供统一的操作界面,可以方便地进行软件的安装、配置和更新,同时也可以对硬件进行管理和维护。对于异构计算设备的软件管理,可以采用容器化技术,将不同种安全管理方面,需要提供统一的安全工具,以确保异构计算设备的安全性。异构计算设备的安全问题主要涉及数据安全、身份认证、漏洞管理等方面。例如,可以采用统一的身份认证机制,对设备的访问进行认证和授权;同时可以通过安全补丁管理工具,及时对迁移工具方面,需要提供统一的迁移方案,以便在不同异构计算设备之间进行快速迁移。异构计算设备之间的迁移涉及到不同的处理器和加速器之间的转换,需要提供一套标准的迁移方案,以确保不同设备之间的兼容性和互操作性。例如,可以采用虚拟化技术,将不同种类的处理器和加速器虚拟化为同一种处理器和加速器,以实现快速的迁移。3.2.2面向异构融合的操作系统人工智能、大数据、物联网等技术迅猛发展,用户的计算场景更加多元,计算类型更加复杂多样,多CPU、多XPU共存也已然成为长期趋势,这将会显著增加操作系统对多元异构硬件管理和使用的复杂性。基于以上问题,操作系统需要在多方面进行优化。首先,操作系统需要能够对异构设备进行抽象,将不同的异构设备抽象成标准的Linux设备供程序使用;其次,操作系统需要提供异构设备的统一编程模型,以此简化编程方式,提升应用程序性能;最后,操作系统需要对异构设备的调度使用进行优化,充分发挥异构设备的操作系统提供了标准的设备驱动程序接口,包括字符设备、块设备、网络设备等,异构设备可以通过编写标准的设备驱动程序与操作系统进行交互,从而实现异构设备的统一异构设备的管理流程包括:1)硬件检测,系统启动时检测接入的异构设备,如GPU/DPU/FPGA等,系统创建对应的device。2)驱动程序装载,操作系统检测到异构设备时,会尝试加载对应的驱动程序进行异构设备的初始化、资源的分配、中断的注册等,最终会通过字符设备、块设备、网络设备等方式暴露给用户态。3)访问异构设备,用户态程序可以通过相应的设备节点访问异构设备,比如通过标准的open/read/write系统调用对为了充分利用多种硬件架构的性能优势,开发人员需要为不同的硬件平台编写不同的代码,这对开发人员来说是一个挑战,同时也限制了应用程序的可移植性,所以需要提供一个统一的编程模型和一套工具,使开发人员可以使用一种语言和一组库来开发可以在不实现统一编程模型的关键是提供一种跨多种硬件架构的高性能并行计算编程语言。这种语言能够支持统一编写可以在各种硬件架构上执行的代码,还应提供一组性能库,覆盖高效的数学、数据分析和图形处理等常见的高性能计算场景,从而能够针对特定的硬件架除了编程语言和性能库,统一编程模型还应提供一组性能工具,包括性能分析工具和优化器,帮助开发人员找到应用程序的性能瓶颈并提供优化建议,从而提升应用程序的性随着云计算技术的发展,算力抽象和供给方法从传统的物理机方式跨越式发展到包含虚拟机、容器、安全容器、裸金属服务器等更多粒度基于云计算的算力抽象方法,以满足用户多样化的资源需求和业务诉求。通过虚拟机承载稳态业务,搭配更加灵活敏捷的容器和安全容器承载敏态业务,并基于云物理机提供更高性能的计算能力,成为越来越多客户的首选,与此同时对云操作系统提出了可变粒度资源统一池化、统一管理及形态互转的要求。可变粒度的资源池化需要解决多种粒度的算力抽象在计算、存储、网络等资源的割裂问题,构建统一的底层资源池,进行统一的池化管理。在此基础上,通过云操作系统提供的统一门户,为租户提供所需的虚拟机、容器、云物理机等资源,资源之间具备网络互联、数据互通的能力。更进一步的,实现资源之间的形态互转,以满足用户希望的随业务变化而改变业务承载实体的灵活需求可变粒度的资源管理能够提升资源调度的灵活性、业务敏l操作系统内核调度器优化:调度器是操作系统中非常重要的组件,它负责协调和管理各个进程之间的执行。由于目前调度策略不能满足所有场景需求,通过修改调度器实现新调度器需要重新编译内核且难度较大,因此,如何能够在系统运行时动态升级器成为研究热点。其中,调度器热升级一种实现方式可以通过将调度器子系统从内核取出来,然后针对不同业务对代码进行定制修改,最终以模块形式加载到内核并动态调度器。这种做法可以有效解决升级内核成本较高、调度优化无法快速规模化部署的问题。l面向内存冷热数据管理的调度优化:为了提升内存的容量和性能,内存技术正在快带来了新的挑战。如果内存管理模块不考虑各内存介质的访问延迟,将所有内存介质按照DRAM进行管理会导致内存访问性能降低。解决这个模块中将不同内存介质划分到不同的NUMAnode,然后将同类型的NUMAnode划分到同一个分层中,以此实现内存的分层管理。后续基于分层管理可以实现内存数据的冷热迁移,让热内存保持在快速内存中,冷内存保持在慢速内存中,从而高效的利用不同介质的l面向容器混部场景的调度优化:在容器场景,如何最大限度的提高资源利用率,在提升容器部署密度的同时又不影响业务运行是重点研究的方向。目前资源隔离技术主通过cgroup实现,但在某些场景还需要源优先访问。为了解决这些问题可以采用多种①基于GroupIdentity技术,提升高优先级组的及②基于处理器的硬件资源管理技术,实现CPUcache和内存带宽③memcg内存回收优化,避免应用自身陷入直接内存回收,适用于对时延敏感的容访问,同时具有自适应能力,尽可能避免磁盘资源被浪费。l高性能网络:实现高性能网络的一种方法是基于eBPF。eBPF对网络的加据包的时候触发执行,常用于防火墙和四层负载均衡;TC候触发执行,运行在内核协议栈中,常用容器之间的网络通信加速;套接字程序在套创建、修改、收发数据等变化的时候触发执行,运行在内核协议栈中,常用于过滤、RDMA可以将CPU从网络传输中解放了出来,提升网络的性能,但使用RDMA需要修改3.2.3面向异构融合的编程框架异构融合计算在计算机领域的应用将逐步扩大,随着各种新型硬件的出现和异构计算框架的不断完善,异构计算编程有望成为计算发展的重要趋势。特别地,在AI领域、HPC科学计算领域方面,对于异构和异构融合的需求是极为迫切的。软件的编程框架决定了其适应性,从底层标准到上层接口套件,目前已有多种异构并行编程框架。特定于底层硬件设备的标准和框架允许开发者直接针对特定硬件设备进行编程,包括KhronosGroup组织制定和维护。它提供了一个统一的编程模型和接口,方便开发者在各种lSYCL(Single-sourceC用SYCL,开发者可以在异构计算环境中编写具全栈异构框架聚焦于开发适用于多平台的编程框架,包含硬件抽象、编程语言、库和lOneAPI是由Intel推出的跨架构编程模型,旨在简化并加速针对不它提供了统一的编程接口、工具集和库,可用于开发异构lROCm是由AMD推出的一个开源平台,用于支持多平台异构编程。它提供了一系列工具、库和编程模型,允许开发者使用常见的编编程,支持多种操作系统(如Linux和Windows)。ROCm还与HSA(Heterogeneous在未来,异构融合编程框架的发展在统一性、易用性和广泛性上还有大幅发展空间,也就是1)统一编程模型,以简化异构编程2)向更高级别的抽象发展,以降低并行编程的复杂性3)逐步扩大支持的硬件范围等。近年来,随着人工智能技术的飞速发展,各种深度学习框架如雨后春笋般涌现出来。提供高效的推理服务。虽然上述框架对主流的模型类型都有支持,但在硬件支持方面,仅限于CPU、GPU和少数AI芯片,而对其它AI芯片特别是国产芯片都不支持,这使得使用这些不被支持的异构芯片面临极大挑战。深度学习框架和推理Server框架提供通用的人工智能编程支持,并在人工智能技术的应用中扮演着至关重要的角色。除了框架本身外,编译等技术对人工智能编程的效率等方面具有影响,其中一个趋势便是机器学习模型的优化技术。对于同构编程框架,一般的优化技术包括编译加速、循环优化和指令优化、内存优化、低比特量化、模型压缩、多线程优化等。这些对异构编程的第一是对于底层异构算力的支持。上述编程框架除了支持典型器外,对别的异构处理器并不友好。开发对新型异构算力的支持本身的发展推广和新兴异构处理器的推广都具有积极的作用。在这方面,已有的一些解决l通过AI编译器的方式,可以将前端模型转换为中间表示(IR然后使用相应异构芯片的代码生成器生成代码。这种方法主要用于推理任务,并且通常需要编写适配新异构l通过修改现有框架或使用插件来支持异构芯片。这种方式可以同时支持训练和推理,都是通用的编程框架。国产的PaddlePaddle等已经考虑了对包含高维稀疏离散异构数据的处理。在企业的实际应用中,可能还存在别的场景。针对这些场景的扩展和优化等可以进除了注重深度学习优化、强化学习支持、灵活和轻量部署,未来的异构编程框架可能会向着自适应计算发展,即在运行时根据输入数据的特征和任务需求,动态地选择最佳的计算HPC(HighPerformanceComputing)即高性能理器集群,来处理大规模计算、求解复杂问题的技术,对并行和分布式计算、大数据处理HPC在科研和工程中的许多方面都有广泛应用,例如基因测序、天气预报、分子动力、工程仿真、天文数据处理、粒子运动求解等。随着高性能计算集群进入E级运算统方式难以实现性能突破,异构融合的方式逐渐成为HPC实现大规模扩展、流方式之一,势必对异构并行编程框架需求更高。那么更加灵活和可编程的加速器以及更加智能的系统优化,可以进一步提高HPC应用的性能和效率,满足更复杂、也在发生变化,从而在各个层次面向异构实现。典型的转变主要体现在两个方面,第一是化和异构设计需求的出现,很多原先使用Fortran编写的程序转为使用C++,以便更好地适l多CPU核计算框架编程到异构计算框架编程:早期的并行计算主要采用基于共享内存的多CPU核计算框架,例如使用OpenMP进行并行计算。随着异构计算设备的兴起,开框架,而OpenACC是一种针对异构计算的并行编程方式。为了使原先使用CUDA编写的算等复杂计算领域中,这背后往往是对指数级计算量需求的不断增加。随着网格稠密程度增加、模拟尺度增加,计算量呈现出了指数型增长,促使多学科模拟等正在尝试和建立异面对的是复杂的,涉及大气、陆地等多模块的大规模数据和复杂物理过程。在版本迭代发将趋向于支持更多不同类型的加速器,因此未来也将注重高级别的抽象和编程模型。此外,在HPC系统中,资源管理是一个重要的挑战,为了提高异构计算系统的性能,未来的可能会更加智能化,具备自动优化和并行化的能力。这将会推动更大规模的数据处理和提此外,未来HPC和AI可能结合更加紧密3.3系统层面融合技术探索系统层面的融合计算技术探索,主要讨论大规模数据中心级的融合技术,以及新型计3.3.1数据中心融合随着新型应用的加速演变,数据中心正转向从单一规模扩展到复杂架构融合。转变之或FPGA等异构计算加速器。转变之二是数据中心的架构以系统设计为中心,按照业务需是一个逻辑上的单一的“大应用”,是数据中心级别的业务系统;因此硬件重构需按照“数据中心即计算机”的理念来实践。以系统设计为中心的原则,需要我们重新思考如何构建和部署数据中心资源。它意味着要超越硬件和软件的传统界限,考虑整个数据中心作为一个协同工作的系统。例如,对于特定的AI工作负载,我们不仅要考虑芯片的设计,还要考栈如何相互作用以提高效率。按照业务需求来设计包括如下部分:1)针对性优化:传统的芯片设计通常是通用的,不考虑其在特定应用场景中的性能。而针对特定业务需求的系统用率:传统的通用设计导致资源在某些应用场景中被浪费。而按需设计可以确保资源在特定的工作负载下达到最大的利用率;3)异构融合(软硬件系统级融合):不改变系统层次结构和组件交互关系,但打破软硬件界限,通过系统级的协同设计,实现更高效、更灵活Google的TPU是这一理念的经典例证。以矩阵运算为代表的深度学习工作负载,在Google数据中心占比快速增长,已经成为主要出发,专门针对深度学习的特征进行了系统设计。在芯片层面,通过定制高密度的8比特运算吞吐。同时,TPU还内置了大容量的片上缓存,提供数据局部性,减少外部存储访问,以满足深度学习应用的延迟需求。如下图,主要的计算部分是右上角的黄色矩阵乘法单元(MatrixMultiplyUnit其输入为蓝色的权重FIFO(Weigh(UnifiedBuffer),输出是蓝色的累加器(Accumulators);黄色的激活(Activation)单元对累加器(Accumulators)执行非线性函数,这些函数传输至缓冲器(UnifiedBuffer)。TPU的硬件设计都紧紧围绕数据中心的业务需求进行了系统设计,在矩阵乘法运算单元方面实现了高密度低位宽的设计,大幅提升了吞吐量;在存储系统方面采用了大容量片上总之,从系统层面看,TPU不仅单点提升了计算性能,还通过软硬件协同设计提升了数据中心整体的计算效率,降低了系统能耗;充分体现了从业务需求出发的系统设计思想。统设计为中心、按照业务需求来设计”的异构融合理念。这种数据中心融合的理念,不仅推动了数据中心从规模扩展到架构融合的转变,异构计算的快速发展,不仅反映了算力资源的多样性,还驱动着处理器技术的不断演进和创新。异构计算的融合趋势,降低了超算中心、数据中心和智算中心间的算力服务边界,各类型算力中心利用相似的异构引擎和分布式计算架构,实现更灵活地跨越应用算力服务。谈到数据中心融合,离不开十多年来一直在发展的一种趋势,就是融合架构。融合架构的本质在于硬件重构与软件定义。其核心技术包括物理层面的“解耦、集中、智能调1ISCA2017,In-DatacenterPerformanc度”,实现计算、存储和网络资源的分类和集中化。在逻辑层面,支持资源池化和应用驱动的资源动态分配。融合架构可以按照软硬件协同的方式,分三个阶段逐步发展,如下图:l融合架构1.0:实现了散热、电源、管理资源的集中化和模块化;运用软件定义技术进行计算和存储等资源的池化和集中管理,其典型代表为整机柜服务器。融合架构1.0相l融合架构2.0:机柜内部使用高速互连技术如PCIe,对异构计算加速设备、存储和(SmartModularCenter,模块化数据中心架构)。一般意义上的软件定义网络,是在三层融合架构3.0:在硬件重构和软件定义上更进一步的计算机通过软件形成任意粒度大小的资源样可以池化和任意分配,形成各种规模和配置的计算资源。同时,配合应用感知的资源分配技术,将使数据中心的资源调度完全智能化、高效化。融合架构3.0提供统一的资源视图,将硬件资源清晰地组织成不同的功能区,功能区在软件定义的控制下形成不同的资源池来支撑云应用和AI应用等,智能感知上层业务类型,自动重构适合的资源来为业务构建最佳的运行环境,让应用软件与运行环境之间的契合程度达到一个前所未有的水平。这种创新的体系结构,能够实现异构资源的高效融合,这一阶段被视为“数据中心即计算机”(DataCenterasa资源的逻辑上解耦,构建资源池。例如,基于CXL总线协议,可通过软件定义实现远端内存多主机共享与灵活调配。网络可采用非阻塞的多级CLOS拓扑结构,可以提供每秒5Tbps的总互联带宽,满足大规模资源池互联需求。另外,未来也可以应用先进的光互连技术,实现机柜间乃至数据中心级别的资源互联,链路传输距离可达(2)满足系统高速信号完整性。实际上,解耦架构给链路拓扑设本在服务器内部的互连总线需要在机柜内甚至机柜间的外部连接;随着数据速率的不断攀升和系统链路变得更加复杂,互连链路延展已经接因此,需要应用实验设计法和响应曲面统计法等仿真方法论,对复杂链路高速互连进行高精度的拟合仿真研究,充分考虑多变量及公差分布影响(如阻抗公差、芯片性能、制造工艺、温度等因素准确分析解耦池化系统多样化拓扑和传输速率的互连链路风险与(3)运用新型供电与散热技术(如直流供电、液冷),提升计算密度与系统能效。例如,可构建直流母线供电体系,缩短供电链路,降低损耗,提升功率密度。采用液冷技术,提升服务器功率密度,并保证冷却液零泄漏。优化散热系统流阻,提升传热系数,降低PUE值。这些技术可以有效提高计算密综上所述,数据中心级融合架构通过在互联、调度、软件和基础设施等多个层面进行基础设施的灵活性和使用效率。这是未来数据中心发展的重要另外,数据中心级融合架构在支持业务敏捷性方面也具有发展潜力。未来有望通过应用感知调度技术,实现业务类型的智能识别,然后自动调配匹配的计算资源。这种技术手段包括:应用特征抽取,通过分析应用程序代码、通信模式等自动提取应用特征;资源建模,建立应用特征与资源需求之间的映射模型;智能匹配,根据实时业务负载和资源状况,生成动态资源调度方案。这种机制进一步提高了数据中心资源利用率,也使得业务部署和扩从战略高度看,数据中心级融合架构已经逐步在云计算中心、智算中心等领域开始落地,在助力企业实现IT基础设施数字化转型,具有多方面优势。首先,它支撑云计算、AI等新业务在数据中心层面的弹性部署,使企业IT系统具备敏捷性。其次,它提升资源最后,它通过软硬件深度融合创新核心竞争3.3.2新型计算模式融合测,量子计算有望在3~5年后实现一些小规模的实际应用。这些先进计算技术也面临着如存算一体的计算架构融合代表着计算领域的一项重要前沿技术,其潜在影响巨大。传统的PIM方法将计算引入了存储器中,实现了在的创新。例如,美国加州大学的谢源教授在JUMP项目中推动一项名为“Intelligentmemoryandstorage”的研究任务,探索如何在存储器内部实现智能计算。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论