本文选自开放架构HPC技术与生态白皮书,本文介绍ARM指令集兼容架构的HPC应用系统兼容生态完备度、易用性特征。
HPC 应用生态的行业特征明显,例如油气、制造 CAE 行业以商业软件为主,但教育、气象、生命等行业以开源软件为主;不同学科的软件应用特征差异很大。
先介绍 ARM 上若干重要科学和工程计算领域应用软件;ARM 应用生态存在与其他架构应用生态类似的几个特点:
(1)大型软件与小型软件并存。传统高性能计算领域,如 CFD 计算、结构力学、气候气象等,主要依赖于若干大型应用软件一次性完成仿真计算工作。生物信息等领域,依赖一系列软件,分步骤协同完成仿真计算工作。
(2)计算密集型与访存密集型并存。信息安全领域中的口令恢复和分子动力学计算,计算量大,访存和内存要求低。而对于离散成稀疏线性系统的科学计算,计算访存比低,访存速度是限制应用实际计算性能的首要因素。
(3)通信自由型和通信受限型并存。对于线性系统求解类应用,由于只需要对残差等少量数据进行全局通信,可扩展性好,并行效率高。对于大量数据全局操作,如矩阵转置等,可扩展性差,有些只能扩展到几十个节点。
(4)进程级并行和任务级并行并存。能力型应用和大型问题采用进程级并行,通过分布式多核并行实现极大规模可扩展并行计算。普适型应用和海量问题通常采用任务级并行,一次性提交成百上千个任务,一个任务使用 1-100 个计算节点,通过高并发实现并行计算。
(5)单一并行与混合并行并存。大部分软件采用单一并行模式,85% 以上支持 MPI 并行。小部分仅支持 OpenMP 并行,极少数支持多级混合并行,甚至异构并行。
(6)核心算法简洁与流程复杂并存。科学计算应用聚集到稀疏线性系统求解,口令恢复主要包括AES 等核心算法,非确定性粒子输运模拟主要是粒子追踪。
总体而言,ARM 指令集兼容架构在 HPC 领域的应用生态是相对完备的,在重要的科学计算领域中无论是商业软件还是开源软件均有 ARM 指令集版本。
以国家超级计算长沙中心的天河新一代系统为例,已成功部署了 Lammps、Abinit、VASP、Gromacs、CP2K 等基础科研软件,WRF 等气象海洋软件,OpenFoam、NekTar++ 等制造仿真开源软件和 YH-ACT、YH-Aero、YH-SAS、YH-MAX 等天河生态工程计算软件,tensorflow、tensorflow-lite 等人工智能软件,opencv、graph500 等图计算软件,以及beagle、bookleaf、fftw、Laghos、numpy、atlas 等数学库,与基于 x86 架构的超算系统对科学计算应用的支持覆盖率相当。
基础科研
基础科研涵盖的领域范围广,涉及分子动力学、计算化学、地球物理、石油地质、高能物理、天体物理、量子力学等,相关软件种类繁多,其中相当一部分软件为用户自研。
分子动力学是一套分子模拟方法,该方法主要是依靠计算机来模拟分子、原子体系的运动,是一种多体模拟方法。通过对分子、原子在一定时间内运动状态的模拟,从而以动态观点考察系统随时间演化的行为。通常,分子、原子的轨迹是通过数值求解牛顿运动方程得到,势能通常可以由分子间相互作用势能函数、分子力学力场、全始计算给出。常用软件包括 NAMD、Lammps、Amber、ABinit、CPMD、VASP、QE、DL POLY、Siesta、Gromacs 等。其中 Lammps、Abinit、VASP、Gromacs 已在国家超级计算长沙中心已在天河新一代系统上部署。
计算化学是理论化学的一个分支,其主要目的是利用数学近似和电脑程序计算分子性质,例如总能量、偶极矩、四极矩、振动频率、反应活性等,并用以解释一些具体的化学问题。常用软件包括Wannier90、PSI、GAMESS、CP2K、NWchem、Octopus 等。,其中,CP2K 已在国家超级计算长沙中心已在天河新一代系统上部署。
地球物理是透过定量物理方法研究地球的自然科学学科,研究范围包括地球的地壳、地幔、地核和大气层,通常使用地震波、重力、电磁、地热和放射能等定量的物理方法。传统地球物理学主要指固体地球物理学,现代地球物理学的研究延伸到地球大气层外部的现象,例如电离层电机效应、极光放电和磁层顶电流系统,甚至延伸到其他行星及其卫星的物理性质。常用软件包括 Landmark、Petrl、tesseral、Madagascar 等。
石油地质学是研究石油和天然气在地壳中生成、运移和聚集规律的地质学分支学科,是石油和天然气地质学的简称。主要的勘探方法包括四类:地质法、地球物理法、地球化学法和钻探法。常用软件包括 KronosFlow、basinmod、ChemStat、CMG Suite、FlowSolv 等。
高能物理学是研究组成物质和射线的基本粒子以及它们之间相互作用的一个物理学分支。由于许多基本粒子在大自然的一般条件下不存在或不单独出现,物理学家只有使用粒子加速器在高能相撞的条件下才能生产和研究它们。常用软件包括 Geant4、ROOT、Moose Framework 等。
天体物理学,又称天文物理学,是研究宇宙的物理学,这包括星体的物理性质(光度,密度,温度,化学成分等等)和星体与星体彼此之间的相互作用。应用物理理论与方法,天体物理学探讨恒星演化、恒星结构、星际物质、宇宙微波背景、太阳系的起源和许多跟宇宙学相关的问题。常用软件包括CASA、DS9、Starfinder 等。
量子力学是研究物质世界微观粒子运动规律的物理学分支,主要研究原子、分子、凝聚态物质,以及原子核和基本粒子的结构、性质的基础理论。它与相对论一起被认为是现代物理学的两大基本支柱。许多物理学理论,如原子物理学、固体物理学、核物理学和粒子物理学以及其它相关的学科,都是以其为基础。量子理论的重要应用包括量子化学、量子光学、量子计算、超导磁体、发光二极管、激光器、晶体管和半导体如微处理器等。常用软件包括 VASP、CASTEP、MS、ELK、ASW、abinit、CP2K、QE、flapw 等。其中 VASP、abinit、CP2K 已在国家超级计算长沙中心已在天河新一代系统上部署。
气候海洋
数值天气预报需要海量的地理信息、实时的气象信息以及复杂的计算逻辑,WRF 是当前最为先进和广泛使用的数值天气预报系统。
天气预报即综合气象站、卫星等采集的信息数据,对一定区域范围内未来一段时间的天气情况进行预测,时间尺度一般是 1 小时 ~30 天。天气预报可以指导人民生产生活,防范极端天气,方便人们出行,天气预报的常用开源软件有 WRF、GFS。
海洋模拟可用于全球海洋洋流变化、海洋温度、波浪变化、河口海口沉积物演变等研究。海洋领域模式众多,且大多为开源。比较常见的软件包括:NEMO、SWAN、FVCOM、ROMS、HYCOM、WaveWatch3、ECOMSED、ECOM、POP、POM、MOM4、MITgcm 等,其中,NEMO 用于海洋环流、气候研究,ROMS 用于三维海洋建模,SWAN 用于波浪仿真。海洋模拟需要对海量数据、众多的数据源的数据集进行调查、观测、计算,并对海洋数据进行快速交互与分析处理。
制造仿真
伴随中国制造业转型升级进程加速,工业产品设计研发过程中正在大量使用计算机辅助创新技术,以计算机辅助设计(CAD)、工程分析仿真验证(CAE)、电子设计自动化(EDA)、计算机辅助工艺设计(CAPP)为代表的 CAX 研发软件已经成为先进制造业及相关科研院所、设计单位不可或缺的重要研发工具。
计算流体力学(Computational Fluid Dynamics,CFD)仿真包含流动、湍流、热传递和反应等广泛物理现象,其应用范围广。欧美国家已在计算流体力学领域深耕多年,开发出了以Ansys、Abaqus、ESI VPS 等为代表的典型应用。开源软件如 OpenFOAM、SU2、PALABOS、Deal.II、Code Saturne 等。
结构力学仿真研究的主要内容包括计算固体材料的形变、应力和应变,通常用来确定结构(例如桥梁)的强度,以防止发生损坏或事故。结构力学应用范围包括建筑桥梁设计、器件模块设计,车辆、舰船设计等。当前结构力学领域典型软件如 Elmer、Code Aster。
计算电磁学是现代电磁理论研究的主流,其建立在电磁场理论基础上,以高性能计算机技术为工具,运用计算数学方法,专门解决复杂电磁场与微波工程问题。电磁工业软件作为仿真计算的工具,如 ANSYS HFSS、FEKO、ANSYS Maxwell,已被广泛应用于电子装备的电磁设计中。
生命科学
生命科学是高性能计算的重要应用领域,数据量大、数据种类多样。随着基因组、转录组和蛋白质组、医疗影像等生物大数据井喷式增长,对数据存储的要求越来越高,同时,数据分析和挖掘过程中对算力和高性能计算技术的要求也越来越高。常用软件包括:BLAST、BWA、CNVnator、HISAT2、Bowtie、Minimap2、diamond、hisat 等。
虚拟药物筛选是药物筛选技术发展的另一个方向,是将药物筛选的过程在计算机上模拟,对化合物可能的活性作出预测。比较常见的软件包括:PyRx、DOCK、DSMS、Sybyl、QSAR、octave 等。
医学影像提供了功能性和结构性的临床信息,如何从影像中分析疾病相关信息,并加快其分析速度以及提高医学影像的图像质量是医学影像领域亟需解决的问题。如 Relion、GDS3D、eman2 等。
地球物理
CitcomS是一种有限元代码,用于解决与地幔有关的可压缩热化学对流问题。软件为开源软件遵循 GPL-2.0 协议。ASPECT是 由 CIG组织开发的一套开源地球动力学热对流模拟代码,旨在为地学工作者提供一套具备高可用性、高可扩展性、数值求解算法先进、文档完备的开源软件。
下面,介绍下我国自主研制的若干科学和工程应用软件。
中国科学院相关单位研发的芯片后端验证工具 ChEDA、离散颗粒运动模拟软件 DPS、拟颗粒模拟 PPM+、天体物理模拟软件 PHoToNs、相场模拟软件 ScLETD、分子动力学模拟软件DeePMD-kit、格点量子色动力学CLQCD、海洋环流模式 LICOM。
中国空气动力研究与发展中心NNW 系列软件,国防科技大学银河矩阵计算软件YHMatrix、不可压缩流体计算软件 YHACT、银河通用网格生成软件 YHGRID,西安电子科技大学计算电磁软件LASPCEM,自然资源部第一海洋研究所海浪模式 MASNUM,西安航空计算技术研究所外流仿真分析软件 WiseCFD-UG,中国核动力研究设计院MOI-X 与MORE,西北工业大学航发仿真应用计算软件AES,北京理工大学全波数值电磁仿真软件 SINOCOM等。
审核编辑 :李倩
-
ARM
+关注
关注
134文章
9042浏览量
366733 -
制造业
+关注
关注
9文章
2215浏览量
53537 -
HPC
+关注
关注
0文章
311浏览量
23677
原文标题:面向ARM指令架构HPC应用软件生态
文章出处:【微信号:AI_Architect,微信公众号:智能计算芯世界】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论