高性能计算机系统架构
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
连接方式
主要商品化网络
• 千兆以太网,带宽小(理论值125MB/s),延迟大35--45 µs ; • Infiniband;MPI乒乓测试带宽:850 MB/s,MPI短消息 延迟:< 7 µs ; • Myrinet:MPI乒乓测试带宽:230 MB/s,MPI短消息延 迟:7 µs ; • Qsnet:MPI乒乓测试带宽:300 MB/s ,MPI短消息延 迟:5 µs ;Qsnet第二代产品带宽进一步增大,可达 1.3GB/S,延迟可减小到3- 5 µs ; • SCI:MPI乒乓测试带宽:320 MB/s ;MPI短消息延迟: 1 - 2 µs ;
结构模型
• SMP: – 对称式共享存储:任意处理器可直 接访问任意内存地址,且访问延迟、 带宽、几率都是等价的; 系统是对 称的; – 微处理器: 一般少于64个; – 处理器不能太多, 总线和交叉开关 的一旦作成难于扩展; – 例 子 : IBM R50, SGI Power Challenge, SUN Enterprise, 曙光一 号;
看节点间的连接方式(对于分布存储的多节点系统): 看节点间的连接方式(对于分布存储的多节点系统):
• 节点之间的连接是否常见的商品化网络 (Ethernet,Myrinet,Qsnet,Infiniband, SCI),如果是,则是集群系统,否则是 MPP系统。
衡量系统性能的两个常见指标
1)MIPS(百万条指令每秒): • 理论计算:处理器的时钟频率与平均每条指令 所需的时钟周期(Cycles Per Instruction)的比 值 MIPS = clock rate / CPI = (number of Instructions) / (CPU time) • 实际数值:对于一个应用(程序),指令数目 与运行时间的比值 MIPS’= (number of Instructions) / (execution time)
高性能计算机系统架构及编程模型
技术支持中心 袁伟
yuanwei@dawning.com.cn
主要内容
如何获取高性能计算 高性能计算机主要架构
获取高性能计算的手段- 获取高性能计算的手段- 指令机并行
从CPU内部挖掘并行性:
提高主频, 提高IPC(每个时钟周期完成的指令数目);
提高CPU主频 双核、多核处理器; 指令级并行导致处理器内的功能部件增多,系 统复杂,导致晶体管数目增加,功耗和发热带 来问题,且会受到物理极限的天花板作用;ห้องสมุดไป่ตู้
获得高性能计算的手段- 获得高性能计算的手段-向量计算
向量处理器,采用向量流水部件,特别适合向 量运算; 曾经风靡一时; 设计困难,成本高,应用领域狭窄,向量技术 被其他新兴的技术所掩盖; 地球模拟器的影响给向量处理技术带来了新的 一丝希望。
获得高性能计算的手段- 获得高性能计算的手段-多处理 器并行系统
专用连接
• • • • NumaLink; (SGI) SP Switch,SP Switch2; (IBM) CrossBar; Cray Interconnect; (Cray)
500 450 400 350 300 250 200 150 100 50 0 06/1993 06/1994 06/1995
访存模型
NORMA: UMA:
NUMA:
多处理机(单地址空间共享存储器) 多处理机(单地址空间共享存储器) UMA: Uniform Memory Access NUMA: Nonuniform Memory Access 多计算机(多地址空间非共享存储器) 多计算机(多地址空间非共享存储器) NORMA:No-Remote Memory Access
分布共享存储多处理机系统 (DSM)
大规模并行计算机系统(MPP)
• MPP: – 物理和逻辑上均是分布内存 – 能扩展至成百上千个处理器 (微处理器或向量处理器) – 采用高通信带宽和低延迟的互 联网络 (专门设计和定制的) – 一种异步的MIMD机器;程序 系由多个进程组成,每个都有 其私有地址空间,进程间采用 传递消息相互作用; – 代表:CRAY T3E(2048), ASCI Red(3072), IBM SP2, 曙光1000;
均匀存储器存取 (UMA)
• 对称多处理机系统(symmetric multi-processor) 对称多处理机系统(symmetric multi–所有处理机都能同样访问所有外围设备;所有处理 机都能同样运行执行程序,如操作系统的内核、 I/O服务程序 • 不对称处理机系统(asymmtric multi-processor) 不对称处理机系统(asymmtric multi–只有一台或一组处理机(MP主处理机)执行操作系 统并操纵I/O,其余处理机(AP附属处理机)没有 I/O能力
共享存储对称多处理机系统 (SMP)
• DSM: – 分布共享存储: 内存模块物理上局 部于各个处理器内部,但逻辑上(用 户)是共享存储的; 这种结构也称为 基于Cache目录的非一致内存访问 (CC-NUMA)结构;局部与远程内存 访问的延迟和带宽不一致,3-10倍 高性能并行程序设计注意; – 与SMP的主要区别:DSM在物理 上有分布在各个节点的局部内存 从而形成一个共享的存储器; – 微处理器: 16-128个,几百到千亿次; – 代表: SGI Origin 2000, Cray T3D;
非均匀存储访问(NUMA)
• 非均匀存储访问(NUMA—Nonuniform 非均匀存储访问(NUMA Nonuniform (NUMA Memory Access) – 被共享的存储器在物理上是分布 NUMA: 在所有的处理其中的,其所有本 地存储器的集合就组成了全局地 址空间 – 处理器访问存储器的时间是不一 样的:访问本地存储器(LM)较快, 而访问外地的存储器较慢(此即 是非均匀存储访问名称的由来) – 每台处理器可带私有高速缓存, 且外设也可以某种形式共享
多处理器并行主要得益于微处理器的发 展; 多处理器并行是构造强大系统的必由之 路; 多处理器系统和处理器技术相结合,如 地球模拟器,是向量机,又是多处理器 并行机 ;
如何判断一个高性能计算机的架构
看处理器: 看处理器 • 处理器是否含向量流水部件,如果是, 则是向量机; • 是否是微处理器,如果不是,则是特殊 架构的机器,如IBM的大型主机; • 是否多处理器系统,如果是,则是并行 计算机;
衡量系统性能的两个常见指标( 衡量系统性能的两个常见指标(续)
2)MFLOPS(百万次浮点运算每秒): • 理论计算:系统的浮点计算部件每秒可以做的浮点计 算次数; MFLOPS = (number of Floating Point compute Unit)×N • N为每个浮点计算部件一个周期内可以做的最多浮点操 作数,对于目前常见的微处理器,一般为1-4; • 实际数值:对于一个应用,浮点运算数目与运行时间 的比值; MFLOPS’ = (number of floating operations) / (execution time)
并行计算机系统结构 • Flynn分类:
–SISD, SIMD, MIMD, MISD
• 结构模型:
–PVP, SMP, MPP, DSM, COW
• 访存模型:
–UMA, NUMA, COMA, CC-NUMA, NORMA
Flynn分类
• Flynn(1972)提出指令流、数据流和多倍性概 念,把不同的计算机分为四大类: –SISD(Single-Instruction Single-Data) –SIMD(Single-Instruction Multi-Data) –MISD(Multi-Instruction Single-Data) –MIMD(Multi-Instruction Multi-Data)
两个指标的缺点
MIPS和MLOPS都不能全面表征系统的性能特征,甚至会 产生误导 • MIPS指标比较适用于事务处理领域,如IBM的大型主机 (Mainframe),价格达到千万元的大型机(含配套软 件),其MIPS值一般为5-10,不及价值数千元的 Pentium4 PC,使用MIPS比较不同类型系统性能的无用 性可见一斑; • 不同系统的指令不同,一条指令的功能和复杂度差别很 大; MLOPS指标存在类似的缺点; • 非计算密集型的应用(事务处理)对I/O要求高,计算 密集型的应用(图形程序)对主频要求高。用户对可靠 性等特殊要求。 • 应用的需求不同,高性能计算领域也是“通才”难求, 各有所长。 • 某些特殊类型计算机适合特定的应用。
均匀存储器存取 (UMA)
• 均匀存储器存取(UMA-Uniform 均匀存储器存取(UMA- Access) Memory Access) – 所有处理器均匀共享物理存储器, UMA: 这里所谓均匀是指所有处理器对所 有存储字具有相同的存取时间 – 每台处理器可带私有高速缓存 – 外围设备也可以一定形式共享 – 各处理机之间的通信是通过共享存 储器的共享变量来实现的 – 这一类多处理机由于对资源的高度 共享,常称紧耦合 紧耦合系统(tightly 紧耦合 coupled system)
非远程存储访问(NORMA)
• 非远程存储访问(NORMA — 非远程存储访问(NORMA NoNo-Remote Memory Access) – 所有存储器都是私有的, 仅能由其处理器所访问 – 绝大都数都不支持远程 存储器的访问
NORMA:
结构模型 ---- 访存模型
NUMA: UMA: NORMA:
如何判断一个高性能计算机的架构( 如何判断一个高性能计算机的架构(续)
看内存编址: 看内存编址:
• 否具有单一的内存编址,所有的处理器 访问内存是不是地位平等,区分SMP和 DSM(NUMA),进一步的CC-NUMA, NCC-NUMA,
如何判断一个高性能计算机的架构( 如何判断一个高性能计算机的架构(续)
两个指标的缺点(续)
2,理论计算和实际测试的差别 • 对于一个具体的应用,可获得的实际性 能与理论峰值有相当大的差距,即效率 低的问题; • 效率应该成为高性能计算的核心问题之 一。
流行的高性能计算机架构
并行向量机 SMP DSM(NUMA) MPP,节点可以是单处理器的节点,也 可以是SMP,DSM • Cluster • 混合架构 • • • •
机群系统(Cluster)
• Cluster: – 每个节点都是一个完整的计算 机 – 各个节点通过高性能网络相互 连接 – 网络接口和I/O总线松耦合连 接 – 每个节点有完整的操作系统 – 曙 光 2000, 3000, ASCI Blue Mountain (48台128-way DSM Origin 2000,6144个处理器)
多处理机 & 多计算机
多处理机 (共享存储) 多计算机 (分布式存储)
UMA:
NUMA:
NORMA:
几种体系结构特征比较
各种架构对比
• SMP瓶颈在访存带宽,限制了可扩展性(性能会严重下降),通 过增大Cache来缓解,又有数据一致性的问题。 • NUMA具有较好的可扩展性,且具有与SMP相同的编程模式。共 享存储的机器可以运行各种编程模式的程序,包括串行程序、共 享存储并行程序和消息传递并行程序。 • 共享存储的机器首先可以看作是一个内存扩充了的串行机器,可 以运行数据量极大的串行程序,如大数据量的数据库应用。利用 多个处理器的并行处理性能,自动并行(靠编译器)作用有限, 需要其他编程方式的应用,如OpenMP。 • 无共享的机器,MPP和Cluster,具有最好的可扩展性,采用消息 传递编程,可编程性不如OpenMP,也可以通过DSM软件的方式 来模拟实现共享存储(其实还是通过消息传递,只不过对上层通 明),如OpenMP/JiaJia(中科院计算所),性能受到影响,但可 以运行OpenMP应用程序。 • NUMA架构的缺点,虽然共享存储可编程性较好,但是对于高性 能计算的应用来说,保证高效率非常困难。