高性能计算HPC全面解析
2024-10-10 14:31:45 0 举报
AI智能生成
高性能计算(HPC)是一种利用并行处理、分布式系统和互联网等技术,提供处理和存储大量数据的能力,以满足各种复杂科学计算需求的计算技术。本文全面解析了高性能计算的概念、应用、关键技术和发展趋势。高性能计算广泛应用于气候建模、生物信息学、流体动力学、物理模拟、机器学习等领域,帮助企业、科研机构和国家实验室解决复杂问题。它包括硬件(如处理器、网络和存储设备)和软件(如操作系统、并行编程工具和中间件)两个关键组成部分,以及如虚拟化、云计算和大数据分析等新兴技术。随着技术的进步,高性能计算正朝着更加智能化、绿色化和集成化的方向发展。
作者其他创作
大纲/内容
Spectrum Scale
具有良好的可扩展性、闪存加速性能,以及基于策略的自动存储分层功能(从闪存、磁盘到磁带)
为所有数据提供单一文件命名空间,提供 Swift/S3 对象服务和 Openstack 接口、大数据等存储服务接口
IBM Spectrum Scale 是高性能、高扩展性的文件、对象、块和大数据分析的存储软件,具备随地存储、运行和数据访问能力
BeeGFS
简介
BeeGFS既是一个网络文件系统也是一个并行文件系统
客户端通过网络与存储服务器进行通信
通过BeeGFS添加更多的服务器,其容量喝性能被聚合在单个命名空间中
BeeGFS是遵循GPL的免费开源产品
系统架构
实现了ObjectData和MetaData的分离
搭建一套BeeGFS至少需要
管理f服务器(MS)
对象存储服务器(OSS)
元数据服务器(MDS)
文件系统Client
两个守护进程
Helper-daemon
Admon
主流HPC产品和解决方案
DDN存储解决方案和产品
四种存储服务
块设备
文件
对象
计算存储融合
三个平台
S2A
S2A并行的架构提供Block存储服务,是比较老的平台,已经被SFA平台替代
SFA
主要提供SAN和文件网关服务
WOS
曙光存储解决方案和产品
希捷存储解决方案和产品
Dell EMC存储解决方案和产品
HPC主流网络和技术分析
InfiniBand技术和基础知识
高带宽、低延时
IB 是以通道为基础的双向、串行式传输
在线路不够长时可用 IBA 中继器进行延伸。每一个 IBA 网络称为子网,每个子网内最高可有 65,536 个节点
每个节点必须透过配接器(Adapter)与 IBA子网 连接,节点 CPU、内存要透过 HCA连接到子网;节点硬盘、I/O则要透过 TCA连接到子网,这样的一个拓扑结构就构成了一个完整的 IBA
主要用于 HPC 高性能计算场景,大型数据中心高性能存储等场景
HPC应用的共同诉求是:低时延(<10微秒),低CPU占有率(<10%)和高带宽(主流56或100Gbps)
HPC行业和市场概述
传统计算的痛点
性能瓶颈
资源分配不均
缺乏统一管理
能耗居高不下
扩容部署复杂
HPC和AI、大数据的融合需求迫切
HPC的主要场景和分类
CAE场景
CAE
计算机辅助工程
结构d的离散化
IFEA(隐式有限元分析):通过迭代算法计算,内存要求高
EFEA(显式有限元分析):不适用迭代计算,并行度高,网络要求高
应用领域
航空航天、汽车、船舶、机械、建筑、电子
流程
几何建模、划分网格
指定荷载和边界条件,提交给服务器进行分析
显示结果,评估产品性能
石油勘探
地震资料处理
计算量大
超强的j计算能力
数据海量
大带宽的存储
计算并行粒度较大
网络要求中等
油藏模拟
大规模计算
大内存带宽
低延迟高带宽
网络要求高
气象领域:数值气象预报
计算量巨大
通讯极为密集
实时性强、定时运行
对系统IO性能要求很高
科研领域
分子动力学
量子力学
生命科学
生物信息学
分析动力学模拟
冷冻电镜
新药/疫苗研发
图像/动漫渲染
总结:
传统HPC
HPDA高性能数据分析
HPC anywhere
HyperScale超大规模集群
HPC系统主要组成
HPC软件架构堆栈
操作系统
redhat、centos
集群管理软件
xCat、rocks、cmu、bcm
作业调度系统
slurm、pbs、SGE、LSF
并行文件系统
Lustre
并行环境
openmpi
编译器
gun、Intel、pgi
数学库
HPC软件并行环境
编译器:把源代码经过处理和编译链接编程在系统中可执行的文件;
编译器可以针对不同的硬件平台使用不同的编译参数对源程序进行优化,提高陈旭的执行效率
编译器可以针对不同的硬件平台使用不同的编译参数对源程序进行优化,提高陈旭的执行效率
数学库:HPC应用软件数值计算工作会使用到很多数学领域的常用算法,
这些算法经过长时间的改进和优化逐渐成为了标准的数学库
这些算法经过长时间的改进和优化逐渐成为了标准的数学库
并行库:主要指MPI消息传递标准的各种实现,将作业分解多级进程并行处理,
通过消息传递进行进程间同步
通过消息传递进行进程间同步
HPC集群系统组成
1硬件层
2平台层(中间层)
3应用层
HPC系统典型部署
管理网络
管理节点上的集群管理软件,收集计算节点等其他节点的状态信息,并实现管理功能
监控网络
用于带外监控和管理功能;通常建议管理网络和监控网络使用独立的网络设备
计算网络
用于不同节点进程间的数据交互,通常通过MPI实现
数据网络
用于节点访问文件系统;大部分情况下,数据网络和计算网络合一,
部分对可靠性和性能要求较高的集群也会将数据网络独立出来使用单独的网络设备
部分对可靠性和性能要求较高的集群也会将数据网络独立出来使用单独的网络设备
存储网络
用于存储节点与存储设备之间的链接
HPC场景的存储形态
统一命名空间NAS
让所有的节点都认到一块区域,讲所有的临时性数据和最终数据都写在这里;表现在计算节点的OS中即为看到同一个名字的目录
HPC的主要存储形态
SAN或共享磁盘文件系统
并行处理IO相关
并行处理
一个问题被分解成为多个可以同时执行的部分;
每个部分进一步被分解成为一系列指令;
每个部分的指令可以在不同的处理器上被同时执行;
计算资源包括:具有多处理器/多核的计算机;或者任意数量的被连接在一起的计算机。
度量指标
线性加速
分支主题
4 cores 以上能做到 85%的线性度加速比可以算非常优秀了
MPI并行编程消息机制
MPI实现进程级别的并行计算,进程间通过通信进行消息传递
MPI是一种标准或规范的代表,而不是特指某一个对他的具体实现
MPI不是一种新的开发语言,定义了可以被C,C++和Fortran程序调用的函数库
MPI是一种消息传递编程模型,最终目的服务于进程间通信
HPC中占主导地位的模型
流行d的实现方式:MPICH,OpenMPI
分布式计算的“底层(low-level)”
Lustre
概述
面向集群的存储架构
基于Linux平台的开源集群文件系统
提供于POSIX兼容的文件接口
高扩展性、高性能
文件系统架构
Lustre是一种平行分布式文件系统
Lustre是Scale-Out存储架构,建筑强大的横向扩展能力,通过增加服务器即可方便扩展系统总存储容量和性能
非常适合多客户端并发进行大文件读写的场合
对小文件应用分厂不适用
Lustre文件系统可与你行在各种厂商的内核上
Lustre文件系统可以以多种配置进行部署
Lustre 文件系统使用改进版的 ext4 日志文件系统来存储数据和元数据
Lustre 广泛应用于各种环境,目前部署最多的为高性能计算 HPC
一个 Lustre 安装实例包括管理服务器(MGS)和一个或多个与 Lustre 网络13;(LNet)互连的 Lustre 文件系统
GPFS
概述
是IBM公司第一个共享文件系统,一个并行的磁盘文件系统
GPFS是一个分布式、共享、并行集群文件系统,支持从多个节点同时对单一文件系统或一组文件系统的访问
GPFS集群中每一个节点都由管理命令集、GPFS内核扩展、多线程守护进程三个组件构成
文件系统架构
物理架构
存储层
将存储通过SAN环境划分给服务器节点
GPFS服务器层
将这些存储磁盘进行配置并格式化形成最终的GPFS并行文件系统格式
客户端层
通过以太网与所有的服务器节点联通,他们通过私有文件系统协议来共享这个并行文件系统,实现IO的并发读写
逻辑架构
分支主题
0 条评论
下一页