




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、高性能计算集群(HPC CLUSTER)1.1什么是高性能计算集群?简单的说,高性能计算(High-PerformanceComputing)是计算机科学的一个分支,它致力于开发超级计算机,研究并行算法和开发相关软件。高性能集群主要用于处理复杂的计算问题,应用在需要大规模科学计算的环境中,如天气预报、石油勘探与油藏模拟、分子模拟、基因测序等。高性能集群上运行的应用程序一般使用并行算法,把一个大的普通问题根据一定的规则分为许多小的子问题,在集群内的不同节点上进行计算,而这些小问题的处理结果,经过处理可合并为原问题的最终结果。由于这些小问题的计算一般是可以并行完成的,从而可以缩短问题的处理时间。高
2、性能集群在计算过程中,各节点是协同工作的,它们分别处理大问题的一部分,并在处理中根据需要进行数据交换,各节点的处理结果都是最终结果的一部分。高性能集群的处理能力与集群的规模成正比,是集群内各节点处理能力之和,但这种集群一般没有高可用性。 1.2 高性能计算分类高性能计算的分类方法很多。这里从并行任务间的关系角度来对高性能计算分类。1.2.1 高吞吐计算(High-throughput Computing)有一类高性能计算,可以把它分成若干可以并行的子任务,而且各个子任务彼此间没有什么关联。因为这种类型应用的一个共同特征是在海量数据上搜索某些特定模式,所以把这类计算称为高吞吐计算。所谓的Inte
3、rnet计算都属于这一类。按照Flynn的分类,高吞吐计算属于SIMD(SingleInstruction/Multiple Data,单指令流-多数据流)的范畴。1.2.2 分布计算(Distributed Computing)另一类计算刚好和高吞吐计算相反,它们虽然可以给分成若干并行的子任务,但是子任务间联系很紧密,需要大量的数据交换。按照Flynn的分类,分布式的高性能计算属于MIMD(MultipleInstruction/Multiple Data,多指令流-多数据流)的范畴。1.3高性能计算集群系统的特点 可以采用现成的通用硬件设备或特殊应用的硬件设备,研制周期短; 可实现单一系统
4、映像,即操作控制、IP登录点、文件结构、存储空间、I/O空间、作业管理系统等等的 单一化; 高性能(因为CPU处理能力与磁盘均衡分布,用高速网络连接后具有并行吞吐能力); 高可用性,本身互为冗余节点,能够为用户提供不间断的服务,由于系统中包括了多个结点,当一个结 点出现故障的时候,整个系统仍然能够继续为用户提供服务; 高可扩展性,在集群系统中可以动态地加入新的服务器和删除需要淘汰的服务器,从而能够最大限度地 扩展系统以满足不断增长的应用的需要; 安全性,天然的防火墙; 资源可充分利用,集群系统的每个结点都是相对独立的机器,当这些机器不提供服务或者不需要使用的 时候,仍然能够被充分利用。而大型主
5、机上更新下来的配件就难以被重新利用了。 具有极高的性能价格比,和传统的大型主机相比,具有很大的价格优势;1.4 Linux高性能集群系统当论及Linux高性能集群时,许多人的第一反映就是Beowulf。起初,Beowulf只是一个著名的科学计算集群系统。以后的很多集群都采用Beowulf类似的架构,所以,实际上,现在Beowulf已经成为一类广为接受的高性能集群的类型。尽管名称各异,很多集群系统都是Beowulf集群的衍生物。当然也存在有别于Beowulf的集群系统,COW和Mosix就是另两类著名的集群系统。1.4.1 Beowulf集群简单的说,Beowulf是一种能够将多台计算机用于并行
6、计算的体系结构。通常Beowulf系统由通过以太网或其他网络连接的多个计算节点和管理节点构成。管理节点控制整个集群系统,同时为计算节点提供文件服务和对外的网络连接。它使用的是常见的硬件设备,象普通PC、以太网卡和集线器。它很少使用特别定制的硬件和特殊的设备。Beowulf集群的软件也是随处可见的,象Linux、PVM和MPI。 1.4.2 COW集群象Beowulf一样,COW(Cluster Of Workstation)也是由最常见的硬件设备和软件系统搭建而成。通常也是由一个控制节点和多个计算节点构成。COW和Beowulf的主要区别在于:COW中的计算节点主要都是闲置的计算资源,如办公室
7、中的桌面工作站,它们就是普通的PC,采用普通的局域网进行连接。因为这些计算节点白天会作为工作站使用,所以主要的集群计算发生在晚上和周末等空闲时间。而Beowulf中的计算节点都是专职于并行计算,并且进行了性能优化。Beowulf采用高速网(InfiniBand, SCI, Myrinet)上的消息传递(PVM或MPI)进行进程间通信(IPC)。 因为COW中的计算节点主要的目的是桌面应用,所以它们都具有显示器、键盘和鼠标等外设。而Beowulf的计算节点通常没有这些外设,对这些计算节点的访问通常是在管理节点上通过网络或串口线实现的。 1.4.3 Mosix集群实际上把Mosix集群放在高性能集
8、群这一节是相当牵强的,但是和Beowulf等其他集群相比,Mosix集群确实是种非常特别的集群, 它致力于在Linux系统上实现集群系统的单一系统映象SSI(Single System Image)。Mosix集群将网络上运行Linux的计算机连接成一个集群系统。系统自动均衡节点间的负载。因为Mosix是在Linux系统内核中实现的集群,所以用户态的应用程序不需要任何修改就可以在Mosix集群上运行。通常用户很少会注意到Linux和Mosix的差别。对于他来说,Mosix集群就是运行Linux的一台PC。尽管现在存在着不少的问题,Mosix始终是引人注目的集群系统2 如何架构高性能计算集群在搭
9、建高性能计算集群(HPC CLUSTER)之前,我们首先要根据具体的应用需求,在节点的部署、高速互连网络的选择、以及集群管理和通讯软件,三个方面作出配置。2. 1节点的部署根据功能,我们可以把集群中的节点划分为6种类型: 用户节点(User Node)控制节点(Control Node)管理节点(Management Node)存储节点(Storage Node)安装节点(Installation Node)计算节点(Compute Node)虽然由多种类型的节点,但并不是说一台计算机只能是一种类型的节点。一台计算机所扮演的节点类型要由集群的实际需求和计算机的配置决定。在小型集群系统中,用户节
10、点、控制节点、管理节点、存储节点和安装节点往往就是同一台计算机。下面我们分别解释这些类型节点的作用。2.1. 1用户节点(User Node)用户节点是外部世界访问集群系统的网关。用户通常登录到这个节点上编译并运行作业。用户节点是外部访问集群系统强大计算或存储能力的唯一入口,是整个系统的关键点。为了保证用户节点的高可用性,应该采用硬件冗余的容错方法,如采用双机热备份。至少应该采用RAID(Redundant Array of Independent Disks)技术保证用户节点的数据安全性。2.1.2 控制节点(Control Node)控制节点主要承担两种任务: 为计算节点提供基本的网络服务
11、,如DHCP、DNS和NFS; 调度计算节点上的作业,通常集群的作业调度程序(如PBS)应该运行在这个节点上。通常控制节点是计算网络中的关键点,如果它失效,所有的计算节点都会失效。所以控制节点也应该有硬件冗余保护。2.1.3 管理节点(Management Node)管理节点是集群系统各种管理措施的控制节点。管理网络的控制点,监控集群中各个节点和网络的运行状况。通常的集群的管理软件也运行在这个节点上。2.1.4 存储节点(Storage Node)如果集群系统的应用运行需要大量的数据,还需要一个存储节点。顾名思义,存储节点就是集群系统的数据存储器和数据服务器。如果需要存储TB级的数据,一个存储
12、节点是不够的。这时候你需要一个存储网络。通常存储节点需要如下配置:ServerRAID保护数据的安全性; 高速网保证足够的数据传输速度。2.1.5 安装节点(Installation Node)安装节点提供安装集群系统的各种软件,包括操作系统、各种运行库、管理软件和应用。它还必须开放文件服务,如FTP或NFS。2.1.6 计算节点(Computing Node)计算节点是整个集群系统的计算核心。它的功能就是执行计算。你需要根据你的需要和预算来决定采用什么样的配置。理想的说,最好一个计算节点一个CPU。但是如果考虑到预算限制,也可以采用SMP。从性价比角度说,两个CPU的SMP优于3或4个CPU
13、的SMP机器。因为一个计算节点的失效通常不会影响其他节点,所以计算节点不需要冗余的硬件保护。2.1.7 集群中节点的部署虽然由多种类型的节点,但并不是说一台计算机只能是一种类型的节点。一台计算机所扮演的节点类型要由集群的实际需求和计算机的配置决定。在小型集群系统中,用户节点、控制节点、管理节点、存储节点和安装节点往往就是同一台计算机,这台计算机通常成为主节点(Master Node)。在这种情况下,集群就是由多个计算节点和一个主节点构成。在大型的集群系统中如何部署这些节点是个比较复杂的问题,通常要综合应用需求,拓扑结构和预算等因素决定。 2.2 高速互连网络网络是集群最关键的部分.它的容量和性
14、能直接影响了整个系统对高性能计算(HPC)的适用性。根据我们的调查,大多数高性能科学计算任务都是通信密集型的,因此如何尽可能的缩短节点间的通信延迟和提高吞吐量是一个核心问题。221快速以太网快速以太网是运行于UTP或光缆上的100Mb/S的高速局域网的总称。由于TCP/IP运行时对CPU的占用较多,并且理论上的传输速度和延迟都比较差,现在我们在HPC集群中计算网络的选择上基本不考虑这个方案了。222千兆以太网(Giganet)Giganet 是用于 Linux 平台的虚拟接口 (VI) 体系结构卡的第一家供应商,提供 cLAN 卡和交换机。VI 体系结构是独立于平台的软件和硬件系统,它由 In
15、tel 开发,用于创建群集。它使用自己的网络通信协议在服务器之间直接交换数据,而不是使用 IP,并且它并不打算成为 WAN 可路由的系统。Giganet 产品当前可以在节点之间提供 1 Gbps 单向通信,理论最小延迟为 7 微秒,实测延迟为50-60微秒左右,并且运行时对CPU的占用也比较大。223 IEEE SCIIEEE 标准 SCI 的延迟更少(理论值1.46微秒, 实测值3-4微秒),并且其单向速度可达到 10Gb秒, 与InfiniBand 4X的理论值一样。SCI 是基于环拓扑的网络系统,不像以太网是星形拓扑。这将使在较大规模的节点之间通信速度更快。更有用的是环面拓扑网络,它在节
16、点之间有许多环形结构。两维环面可以用 n 乘 m 的网格表示,其中在每一行和每一列都有一个环形网络。三维环面也类似,可以用三维立体节点网格表示,每一层上有一个环形网络。密集超级计算并行系统使用环面拓扑网络,为成百上千个节点之间的通信提供相对最快的路径。什么是SCI互连技术?符合ANSI/IEEE 1596-1992的SCI技术定义了点到点高速通信端口和数据包协议集;SCI作为一种开放总线技术,实现了高带宽(10Gbit/s)、低延迟(1.46微秒)的网络通讯;SCI端口是双向连接的,保证了数据读、写操作可以同步进行;支持多种CPU类型(Intel、AMD、Sun、Alpha);支持多种流行操作
17、系统(Windows2000、NT、RedHat Linux、SuSE Linux、 Solaris、Lynx、Tru64 Unix、VxWorks);SCI协议支持共享存储器系统,并包含Cache一致性协议集;网络拓扑灵活,可支持星型网,一维环形网(Ring)及二维,三维环形网格拓扑;为执行关键任务应用而设计,支持热插拔和多冗余结构。224Myrinet互连技术Myrinet 提供网卡和交换机,其单向互连速度最高可达到 1.28 Gbps。网卡有两种形式,铜线型和光纤型。铜线型 LAN 可以在 10 英尺距离内以全速进行通信,而在长达 60 英尺距离内以半速进行操作。光纤型 Myrinet
18、可以在 6.25 英里长的单模光纤或者 340 英尺长的多模光纤上全速运行。Myrinet 只提供直接点到点、基于集线器或基于交换机的网络配置,但在可以连接到一起的交换光纤数量方面没有限制。添加交换光纤只会增加节点间的延迟。两个直接连接的节点之间的平均延迟是 5 到 18 微秒,比以太网快。由于Myrinet板上集成可编程微处理器,能满足一些研究者的特定需要。225InfiniBand互连技术InfiniBand是由InfiniBand协会开发的体系结构技术,它是一种用于实现基于通道的交换式技术的通用I/O规范。由于IB的理论带宽极高30Gbit/S, 因此备受业内关注。InfiniBand的
19、解决方案包括一个连接多个独立处理器和I/O平台的系统区域网络,它所定义的通信和管理结构同时支持I/O和处理器与处理器之间的通信。InfiniBand系统可以是只有少量I/O设备的单处理器服务器,也可以是大型的并行超级计算机。 InfiniBand规范定义了3个基本组件:一个主机信道适配器(HCA) 一个目标信道适配器(TCA)一个网络交换机InfiniBand技术通过连接HCAs、TCAs、交换机和路由器而发挥作用(见图1)。位于页节点的InfiniBand设备是产生和使用信息包的信道适配器。HCA和TCA可以提供一个无需CPU干预的高可靠端至端连接。HCA驻留在处理器节点并提供从系统内存到I
20、nfiniBand网络的通路。它也有一个可编程的直接内存访问(DMA)引擎。该引擎具有特殊保护和地址翻译特性,从而使DMA操作可以本地进行或者通过另一个HCA或TCA远程进行。TCA驻留在I/O单元,并提供I/O设备(如一个磁盘驱动器)或I/O网络(如以太网或光纤通道)与InfiniBand网络的连接。它实现了InfiniBand协议的物理层、链接层和传输层。交换机放置在信道适配器之间。它们使几个甚至几千个InfiniBand页节点可以在任意位置互连进一个单一网络,该网络同时支持多个连接。交换机既不产生,也不使用信息包。它们只是根据信息包中路由器报头的目的地地址,将其传送过去。交换机对于节点而
21、言是透明的,同时信息包完整无损地经过交换机网。与目前的通信协议如TCP/IP相比,InfiniBand技术的一个主要变化是InfiniBand硬件承担了原来由CPU完成的许多I/O通信工作,因此在处理并发的多路通信任务时没有现有通信协议所固有的额外开销。在无需系统核心层介入的情况下,它就能够提供零数据拷贝的传输,并使用硬件提供高可靠性和容错性的通信,最终改善了系统的带宽、延迟和可靠性等问题。23集群管理和通讯软件国内和国际上有多种集群管理和通讯软件可供我们挑选,一些是由HPC集成商自己编写的专用软件,捆绑硬件销售的,也有专业的软件公司提供的通用软件包。我们推荐全球知名的HPC软件公司挪威Sca
22、li公司的产品。挪威Scali公司的基于Linux操作系统的集群管理软件,符合MPI 1.2标准。利用图形化管理界面,高性能通讯库以及集成第三方的软件工具,用户可以方便地对集群各节点计算机进行任务分配及监控管理工作,并可通过它提供的一系列软件接口开发自己的应用软件产品,从而降低了整个系统的开发时间和成本,并保证系统配置和升级的灵活性。Scali软件的最大特点是支持多种高速互连网络:从千兆以太网,SCI,Myrinet,到InfiniBand都可以支持。管理软件特点 性能优化:对零长度信息包,传输延迟小于3.5微秒,在64位/66MHz的PCI总线上,持续传输带宽超 过300兆字节/秒; 支持多
23、进程:可以充分利用ScaMPI,能够同时进行请求服务和通讯管理操作; 容错性:ScaMPI能迅速发现暂时的网络错误,重新选择互连排列或改变路由; 自动选择物理传送路径:ScaMPI可自动为MPI选择最佳的传送方式,共享存储,利用SCI将各结点连接; UNIX命令复制:命令行自变量应用程序可自动提供全部MPI程序,避免冗余分析; MIMD支持:ScaMPI支持多指令流多数据流; 图形化前端:可视的图形界面,方便的操作和管理; 调试:ScaMPI支持许多调试程序和分析工具,提供调试功能ScaMPI完全支持Etnus的TotalView分 布式调试程序和Pallas的Vampir MPI分析工具,被
24、选中的程序能够利用GNU全局数据库进行调试。S系列我们在S系列集群计算机中的高速互连网络采用SCI技术。高带宽(10Gbit/s)、低延迟(1.46微秒)正是SCI的技术特点。特别是SCI网络的环型网格和超立方体拓扑结构,保障了集群的高可靠性和系统扩展时成本的线形增长。节点规模: 2-256个节点(2004年7月后,可支持至8000个节点) 应用要求:分布计算,子任务之间联系很紧密,需要大量的数据交换,特别强调带宽和延迟这两个关键指标。应用领域:地震预测预报、石油勘探、气候模拟与天气预报、人体基因与遗传工程、海洋环流和超导模拟、海量存储、科学计算等。 硬件系统配置清单:名称说明配置单位数量主机
25、柜专用服务器标准机柜电源控制器,电源系统(3*20A),风扇,机柜网络系统,系统控制机,前面板LCD触摸屏个系统通讯网络 Cisco2950-12 witch100M Ethernet个视频切换机KVM套存储系统NAS/RAIDVIA C3处理器,缓存 256MB SDRAM,三个10/100以太网端口和一个可选的Gigabit以太网端口,可支持8块Ultar DMA100硬盘可选UDMA 133硬盘,环境监控单元 300W热更换冗余电源台计算节点INTEL/SuperMicro2P Xeon2.4G,1G内存,集成100/1000网卡,标准光驱,软驱,显卡,73G SCSI硬盘台控制节点IN
26、TEL/SuperMicro2P Xeon2.4G,1G内存,73G SCSI 硬盘,集成100/1000网卡,标准光驱,软驱,显卡台高速互连网Dolphin D33X高带宽(667MBytes/s)、低延迟(1.46微秒)的网络通讯卡块其它显示器15寸纯平个1鼠标、键盘、套1软件系统配置清单:名 称说 明版本号备注单位数量监控系统系统监控软件Ver2.0用于系统监控套1操作系统RedHatVer8.0/套1应用软件/套1其它系统MPI(Message Passing Interface)、Mosix/最新套1集群管理系统Scali集群管理软件(for InfiniBand)Ver3.1用于系
27、统管理套1I系列我们在I系列集群计算机中的高速互连网络采用现在备受业内关注的InfiniBand技术。凭借极高的理论带宽30Gbit/S( InfiniBand 12X), 和较低的CPU占用,InfiniBand必将在未来的市场占据重要地位。节点规模:2-1024个节点(目前,我们可以提供8-PORT,24-PORT,96-PORT的IB交换机,大于96个节点需要级联)应用要求:强调超大通讯带宽。应用领域:地震预测预报、石油勘探、气候模拟与天气预报、科学计算等。 硬件系统配置清单:名 称说 明配 置单位数量主机柜专用服务器标准机柜电源控制器,电源系统(3*20A),风扇,机柜网络系统,系统控
28、制机,前面板LCD触摸屏个系统通 讯网络Cisco2950-12 witch100M Ethernet个视频切换机KVM套存储系统NAS/RAIDVIA C3处理器,缓存 256MB SDRAM,三个10/100以太网端口和一个可选的Gigabit以太网端口,可支持8块Ultar DMA100硬盘可选UDMA 133硬盘,环境监控单元300W热更换冗余电源台计算节点INTEL/SuperMicro2P Xeon2.4G,1G内存,集成100/1000网卡,标准光驱,软驱,显卡,73G SCSI硬盘台控制节点INTEL/SuperMicro2P Xeon2.4G,1G内存,36G SCSI 硬盘,集成100/1000网卡,标准光驱,软驱,显卡台高速互连网SBS IB Switch8-port IB Switch或24-port IB Switch或96-port IB Switch台SBS HCA cardIB4X-PCIX, IB4X-PCI, IB4X-PMC块其它显示器15寸纯平个1鼠标、键盘、套1软件系统配置清单: 名 称说 明版本号备注单位数量监控系统系统监控软件Ver2.0用于系统监控套1操作系统RedHatVer
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论