Page 22 - 《软件学报》2025年第12期
P. 22

沈莉 等: swJulia: 面向新一代神威超级计算机的         Julia 语言编译系统                               5403


                 Comprehensive  validation  across  multiple  dimensions  demonstrates  the  efficacy  and  efficiency  of  swJulia.  Experimental  results  show
                 exceptional  performance  in  single-threaded  benchmark  tests  and  many-core  acceleration,  significantly  improving  ultra-large-scale  parallel
                 simulations for the NNQS-Transformer quantum chemistry simulator.
                 Key words:  Julia compiler; Sunway supercomputer; dynamic linking; just-in-time compilation; quantum chemistry simulation
                    近年来, 随着计算机体系结构的不断演进与创新, 异构融合体系结构异军突起, 已逐渐成为高性能计算领域的
                 主流架构. 表   1  列出了  2024  年  6  月最新发布的  Top500  排行榜  [1] 排名前  10  位的系统信息, 其中采用异构体系结构
                 的系统占比达到      90%, 而在神威•太湖之光      [2] 基础上升级的新一代神威超级计算机也同样采用我国自主研制的异
                 构众核处理器     SW26010Pro  构建. 异构融合体系结构通过精心整合通用处理器及专用加速计算单元, 显著增强了
                 系统的计算能力, 并为其注入了前所未有的高效能与灵活性. 然而, 为了全面挖掘并充分利用异构系统的潜能, 研
                 究人员必须不断地探索前沿的应用构建策略, 并将其付诸实践                    [3] .


                            表 1 Top500  排行榜排名前     10  位的超级计算机的计算节点架构信息           (2024  年  6  月)

                   Rank      Name                 Processor                Co-processor      Heterogeneous
                    #1       Frontier   AMD 3rd Generation EPYC 64C 2 GHz  AMD Instinct MI250X  Yes
                    #2       Aurora       Xeon CPU Max 9470 52C 2.4 GHz  Intel Data Center GPU Max  Yes
                    #3       Eagle        Xeon Platinum 8480C 48C 2 GHz    NVIDIA H100          Yes
                    #4       Fugaku            A64FX 48C 2.2 GHz               -                 No
                    #5       LUMI       AMD 3rd Generation EPYC 64C 2 GHz  AMD Instinct MI250X  Yes
                    #6        Alps          NVIDIA Grace 72C 3.1 GHz   NVIDIA GH200 Superchip   Yes
                    #7      Leonardo      Xeon Platinum 8358 32C 2.6 GHz  NVIDIA A100 SXM4 64 GB  Yes
                    #8    MareNostrum 5  Xeon Platinum 8460Y+ 32C 2.3 GHz  NVIDIA H100 64 GB    Yes
                    #9       Summit         IBM POWER9 22C 3.07 GHz     NVIDIA Volta GV100      Yes
                   #10    DGX SuperPOD    Xeon Platinum 8480C 56C 3.8 GHz  NVIDIA H100 SXM5 80 GB  Yes

                    在高性能计算的传统实践范畴内, 应用程序的构建往往依赖于静态链接的方式. 这种构建方法的核心在于, 它
                 能够通过在编译阶段将所有必要的代码和数据静态地链接成一个完整的可执行文件, 从而确保系统运行时的稳定
                 性和行为的可预测性. 然而, 这种方式的灵活性存在显著的局限性, 尤其是在面对持续升级的硬件架构和日益复杂
                 的计算环境时, 难以迅速调整以适应新的需求. 为了克服静态链接的这一固有缺陷, 新兴的高性能计算应用开始探
                 索并采用动态链接技术        [4] . 与传统的静态链接相比, 动态链接提供了更高的灵活性和可扩展性, 展现出多方面的优
                 势. 首先, 其高度的模块化设计使系统架构更为清晰透明, 便于开发者进行管理和维护. 其次, 动态链接引入了更为
                 高效的模块更新和错误修补机制, 显著提高了系统的可维护性和健壮性. 最后, 通过动态加载和卸载特定模块, 该
                 技术还能有效降低系统的内存占用, 从而提升整体资源的利用效率. 这些特点使得动态链接成为高性能计算领域
                 应对快速变化环境的重要技术手段            [5] .
                    在众多高级编程语言中, Julia       以其基于动态链接的即时编译            (just-in-time compilation, JIT) 机制而备受瞩
                 目  [6] . Julia 的设计理念旨在实现高效执行、易用性以及与外部库的无缝集成, 这一理念使得                    Julia 成为高性能计算
                 应用的优选语言. 在科学计算、数据分析以及机器学习等领域, Julia 均展现出了卓越的性能和广阔的应用前景                               [7] .
                 新一代神威超级计算机在硬件层面进行了全面的升级, 对动态运行的支持也更为完善                            [8] . 这一显著进步为   Julia 等
                 动态语言的适配提供了坚实的技术基础. 借助神威超级计算机的先进架构和强大计算能力, 我们有望充分释放
                 Julia 在国产超算系统上的巨大潜能, 并进一步推动相关领域的技术创新和应用拓展.
                    本文深入探讨了针对新一代神威超级计算机的即时编译支撑技术及动态编译优化方案, 并在此基础上成功研
                 发了  swJulia 编译系统. 该系统是专为新一代神威超级计算机定制的                Julia 编译环境, 通过其独特的设计与优化, 显
                 著提升了   Julia 应用的性能. 同时, 本文基于      swJulia 编译系统构建了    NNQS-Transformer 量子化学模拟器, 在新一
                 代神威超级计算机上实现了超大规模可扩展并行模拟, 并取得了一系列国际领先的应用成果. swJulia 系统的成功
                 研制, 不仅有效推动了相关领域的技术创新与应用拓展, 更为依托国产超级计算机的科学研究与工程实践提供了
                 坚实的技术基础. 本文的贡献主要如下.
   17   18   19   20   21   22   23   24   25   26   27