传统超级计算机作为科学计算的核心支柱,在推动技术进步方面发挥了不可替代的作用,但随着科学智能时代下需求的多样化和复杂化,其扩展性和能效的局限逐渐显现。
针对这一挑战,微软亚洲研究院的研究员提出了 Cloud4Science 的新范式,以云计算、人工智能和高性能计算技术的深度融合为核心,重新定义科学计算的架构,加速科学智能的研究进展。在此框架下,研究员们已对关键科学计算算法如 Stencil、FFT、SpMV 等进行了优化,并成功开发了一系列创新算法,为科学家利用云计算及人工智能平台进行科学计算和研究开辟了新的途径。相关工作已连续发表在 SC、PPoPP 等高性能计算与并行计算领域顶会,并获得了 PPoPP’24 唯一最佳论文奖。
作者 | 微软亚洲研究院
在刚刚落幕的国际超算大会 SC’24 上,最新揭晓的戈登贝尔奖获奖应用成功突破了 E 级计算的瓶颈,标志着超级计算机应用正式迈入下一个关键阶段——万 P 级计算(每秒千亿亿次浮点运算)。作为高性能计算(HPC)的巅峰代表,超级计算机长期以来一直是推动科学和技术进步的重要力量。
科学计算作为超级计算机的核心应用领域,利用其强大的计算能力,通过数值模拟、数据分析和数学建模,旨在解决科学、工程和技术中的复杂问题,在揭示自然规律、预测未知现象以及推动技术创新中发挥着不可或缺的作用。
然而,随着科学智能(AI for science)时代的到来,超级计算机在追求更高性能的同时,也面临着一些新的挑战:
架构碎片化:各超算系统采用不同的硬件架构和编程模型,科学应用需要复杂的定制化适配才能运行。这不仅限制了科学应用的多样性,还难以兼顾传统科学计算与智能计算的双重需求。
开发难度高:科学智能时代强调多学科、多技术领域的交叉与协作。不同的超级计算机架构不仅增加了软件开发和维护的复杂度,开发者还需要不断重新学习并掌握跨领域的专业知识,阻碍了科学研究的灵活性和快速推进。
能耗与成本压力:当前 E 级超算每年耗电可达上亿度,未来 Z 级超算能耗可能更高。同时,系统更新换代成本巨大,应用需重新设计和部署,进一步增加了科研投入的时间和经济成本。
Cloud4Science 范式加速科学计算进程
第一阶段是以问题为导向,从算法角度对传统科学计算进行迁移,确保这些计算任务能够在云计算或人工智能硬件架构上顺利运行。这一阶段的核心任务是将经典的科学计算算法,如 Stencil、FFT(快速傅里叶变换)、SpMV(稀疏矩阵-向量乘法)等,转换为基于矩阵乘法的计算模式,以便充分利用云计算和人工智能的强大计算能力。通过这一转化,传统科学计算算法的性能得以显著提升,同时大幅降低了科学应用对硬件适配的复杂性,并为下一步科学计算的智能化奠定了基础。
传统科学算法向云计算与人工智能硬件的无缝迁移
目前,第一阶段的研究目标已经基本完成,即实现传统科学计算算法向云计算和人工智能硬件的无缝迁移。研究员们从 Stencil 算法入手,设计了全新的算法 Jigsaw 和 ConvStencil,将 Stencil 算法向量化并重新张量化成矩阵乘法模式,使 Stencil 算法成功映射到 Tensor Core 等人工智能加速器硬件单元。随后,研究员们又引入了人工智能驱动的低秩适应(Low-Rank Approximation,LoRA)技术,进一步优化 Stencil 性能,推出了 LoRAStencil 以及融合三种经典算法的 FlashFFTStencil,这些创新让多种科学计算算法能够更高效地部署在人工智能加速单元上,实现性能的显著提升并同时降低了硬件适配的复杂性。
扩展矩阵计算边界,连接科学与 AI 硬件
为突破科学计算的性能瓶颈,研究员们提出了 ConvStencil [1],通过将传统的科学计算算法映射为矩阵乘法,进一步扩展了矩阵计算的应用边界,为科学计算与 AI 硬件的高效协同奠定了坚实基础。基于 Stencil 算法与人工智能领域广泛应用的卷积计算模式有着相似之处,研究员们专门开发了一套针对 GPU Tensor Core 的优化算法,使得其能够充分利用 Tensor Core 强大的矩阵计算能力。通过引入布局转换与冲突消除机制,ConvStencil 不仅显著提升了科学计算与云计算及人工智能硬件的兼容性,还促进了科学计算从传统的 CPU 计算向现代 GPU 计算的顺利过渡。
基于矩阵乘法的 ConvStencil 计算系统(PPoPP’24 唯一最佳论文奖)
为了实现内存访问效率的大幅提高,研究员们在 ConvStencil 的基础上设计了 LoRAStencil [4],通过融入 LoRA 技术,巧妙地结合了数据的低秩特征与计算需求。利用分解权重矩阵,优化数据的加载与复用过程,LoRAStencil 有效减少了不必要的内存访问,解决了维度残差问题。实验评估显示,LoRAStencil 相比现有技术,性能提升最高可达2.16倍。LoRAStencil 为在 Tensor Core 单元上实现高效的张量化 Stencil 计算开辟了新的途径,使其在科学计算中能发挥更大作用。
尽管 Tensor Core 单元在处理人工智能任务时表现出色,但在处理如 Stencil 这样涉及大量稀疏数据的高性能计算算法时,仍面临计算资源利用率不高和内存带宽受限的问题。为了解决这些挑战,研究员们创造性地将 Stencil、FFT 和矩阵乘法三种经典科学计算算法融为一体,提出了更为高效的 FlashFFTStencil 计算系统 [3]。实验结果证实,FlashFFTStencil 实现了无稀疏性的边界转换,其性能较现有最先进的技术平均提升了2.57倍。FlashFFTStencil 在实现了多种科学计算算法统一的同时,还成功地将这些算法与 Tensor Core 单元等先进的人工智能硬件连接起来,为科学计算的未来发展提供了新的可能性。
基于全稠密矩阵计算的 FlashFFTStencil 系统
时空数据向量对齐,提升 CPU 计算效率
Jigsaw 算法 [5]专注于 Stencil 算法的向量化,通过采用基于通道的蝶形向量化、基于奇异值分解的维度展平(SVD-based Dimension Flattening)技术以及基于迭代的时间合并策略,有效解决了空间和时间维度上的数据对齐冲突(Data Alignment Conflict, DAC)问题,大幅提升了科学计算在 CPU 上的效率。实验结果显示,在多种测试环境中,Jigsaw 相对于当前最先进的技术平均实现了2.31倍的加速效果,适用于广泛的 Stencil 内核。
在此基础上,研究员们还对另一种重要的科学计算算法——稀疏矩阵-向量乘(Sparse Matrix-Vector Multiplication, SpMV)进行了深入优化,提出了 VNEC 算法 [6]。这是一种创新的 SpMV 存储格式,旨在优化数据局部性和向量化操作,同时缓解现有算法的局限性。VNEC 通过剔除冗余列和改进数据局部性,大幅度减少了内存访问开销,增强了向量计算的效率。实验表明,在多核处理器环境下,VNEC 在 x86 CPU 上相较于标准 MKL SpMV 例程最高实现了 6.94 倍(平均 2.10 倍)的加速,在 ARM CPU 上的加速比最高可达 5.92 倍(平均 1.73 倍)。由于 VNEC 格式转换的预处理成本较低,特别适用于实际的迭代应用场景,展现出了极高的实用价值。
Cloud4Science 范式在量子化学中的实践探索
为了验证 Cloud4Science 范式能否为科学计算带来更好的性能提升,微软亚洲研究院的研究员们与微软研究院科学智能中心(Microsoft Research AI for Science)团队合作,共同开发了一种端到端的优化编译器 EPT(Elastic Parallel Transformation)[2]。利用弹性并行转换技术,EPT 可以把传统的科学计算算法,特别是从头算量子化学计算,自动适配至 GPU 架构。因此,EPT 能够将复杂的量子化学问题分解为适合并行处理的单元,优化任务的划分粒度,并生成专为 GPU 架构优化的高效计算内核。
弹性并行转换(EPT)编译器系统框架图
Cloud4Science 范式推动 HPC 领域变革,加速科学研究发现
在科学研究迈向智能时代的进程中,矩阵计算正逐渐成为连接传统数值计算与科学智能的关键桥梁,而 Cloud4Science 范式凭借其 Z 级计算潜力,不但为科学在时间和空间尺度上带来了质的飞跃的可能,同时也为科学计算向智能化与推理驱动方向的演进注入了动力。以量子化学为例,Cloud4Science 不仅能缩短计算周期,将复杂分子相互作用的模拟时间从数年压缩至数周甚至数天,还能通过矩阵计算与 AI 推理的融合,使得系统能够基于海量计算数据进行模式识别与智能推理,例如预测药物分子与蛋白靶点的相互作用趋势,自动发现可能的抗性突变路径。
正如个人计算机从单机时代迈入云计算时代,彻底革新了信息处理的广度与效率,未来 Cloud4Science 范式的成功应用也有望在人工智能时代为高性能科学计算带来新的变革。通过融合云计算的可扩展性、AI 的智能决策能力以及高性能计算技术,Cloud4Science 将在未来迈向 Z 级计算的过程中,实现科学计算在极限求解与智能推理两大方向的双向突破,赋予科学智能更强的灵活性、更高的效率与更广泛的可扩展性,为科学研究带来新的创新动力与发展空间。
“Cloud4Science 新范式将显著降低高性能计算基础设施的开发成本,并提升其对科研人员的易用性。尤其是对于那些资源有限的小型研究团队或初创企业而言,这一范式将赋能他们获取 E 级乃至万 P 级科学计算的潜力。这意味着更多的科研工作者可以参与到之前仅限于顶尖机构和大型企业才能涉足的前沿科学计算研究中,极大地拓宽了科学研究的边界,加速科学发现的步伐。”曹婷表示。
相关链接:
https://arxiv.org/abs/2412.13203
https://doi.org/10.1109/SC41406.2024.00059
https://ieeexplore.ieee.org/document/10579118
推荐阅读:
▶ “AI 教父”杨立昆:批评马斯克是因为他先攻击了科学家;现有训练方式永远实现不了人类水平 AI
▶ AI 叛乱打响第一枪!Anthropic 最新论文作者齐聚紧急会议:模型“伪装顺从”,暗中对抗训练
▶ 技术专家和神父在梵蒂冈研讨 AI!MIT 教授当场放教皇深伪视频,现场炸锅
“AI 会取代程序员吗?”——这个问题如今愈发令人困扰。伴随着 Cursor 等 AI 编程助手爆火,面对日新月异的技术,不少开发者感到迷茫:未来的程序员究竟该何去何从?是被 AI 取代,还是与 AI 共舞?在这个充满变革与机遇的时代,我们需要重新思考软件开发的未来。为此,CSDN 特别策划推出了最新一期特刊:《新程序员 008:大模型驱动软件开发》。
读过《新程序员》的开发者曾这样感慨道:“让我惊喜的是,中国还有这种高质量、贴近开发者的杂志,我感到非常激动。最吸引我的是里面有很多人对 AI 的看法和经验和一些采访的内容,这些内容既真实又有价值。”
能学习到新知识、产生共鸣,解答久困于心的困惑,这是《新程序员》的核心价值。欢迎扫描下方二维码订阅纸书和电子书。