Linux高性能计算集群的设计与实现
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
收稿日期:2008—02—18 作者简介:李红梅,女,安徽淮北人,助教,工作:安徽新华学院。研究方向:软件与理论。
971
万方数据
\.计算机工程应用技术......
本栏目责任编辑:贾薇薇
图ຫໍສະໝຸດ Baidu 集群系统架构
快速通信协议与服务; 含单一系统映像(SSI)、高可用性(HA)I具和资源管理与调度的集群中间件: 诸如消息传递接口(MPI)脚等并行编程环境与工具; 串行、并行或分布式等应用。
’
)
5结论
本文在研究高性能计算集群的发展技术及体系结构的基础上,以OSCAR集群为实例。快速部署一个五结点的集群环境并运行
简单的并行测试例子。高性能计算集群将逐渐替代专用、特别是昂贵的超级计算机对大规模并行应用构建原型、调试和运行。基于
PCs或工作站的高性能计算快速部署及其可靠性和可管理性研究,对高性能计算集群在科学研究和工程计算等领域的应用,促进高
computing applications tO research on deployment high performance computing clusters based on PCs or workstatiom rapidly at well as its reliability and manageability.
1引言
自20世纪90年代早期以来,昂贵而特制的并行超级计算机逐渐向由单个或多个处理器的PCs或工作站¨】组成的价廉、通用、 松耦合的系统转换。而促成该转换的主要驱动力是高性能工作站和网络部件的快速商品化。这些技术的发展使网络化计算机(PCs 或工作站)成为并行处理的理想工具.从而导致了普通商品化超级计算机的出现。
本研究课题以5台Pc8结点,100Mbiffs以太网互连网络搭建一个OSCAR集群环境。 (1)硬件环境 管理结点:一台Intel Pentium3 2.0GHz处理器,256MB内存,20GB硬盘存储。 计算节点:四台Intel Pentium3 2.0GHz处理器,256MB内存,20GB硬盘存储。 互连网络:100Mbiffs以太网交换机。 (2)软件环境 操作系统:Red Hat Enterprise LinlLX 4。 OSCAR版本:5.0,已集成以下软件工具包: Open MPI 1.1.1:并行编程环境: Maul 3.2.6p14 4-Torque 2.0.0p8:作业调度系统; SGE 6.0uS:作业调度系统: LAM/MPI 7.1.2:并行编程环境: MPICH 1.2.7:并行编程环境: Ganglia 3.0.3:集群状态I监控系统: SC3:扩展的C3集群管理工具; Netbootm萍":管理结点PXE启动: sync_files 2.4:控制异构集群中用户的数据库: packman 2.8:包抽象管理器; systeminstaller-oscar 2.3.1:应用paekman创建映像image: Systemconfigurator 2.2.7—12ef:安装配置框架。 OSCAR安装向导用提供了一个图形化界面来帮助用户完成集群系统的 安装和配置。如图2所示。该向导将引导用户方便快捷地进行集群的安装和 配置,用只需要按步骤点击向导按钮.每一个步骤都会有<Help>按钮.点击 显示该步骤的目的。 按照此向导逐步执行,最后配置结点从网络启动,等待所有的结点从网 络启动并成功加载映像重启之后,安装向导执行完毕.OSCAR集群系统的安 装完成。
本栏目责任编辑:贾薇薇
......计算机工程应用技术.,/
Linux高性能计算集群的设计与实现
孕红梅
(安徽新华学院信息工程学院,安徽合肥230088)
摘要:计算机和网络硬件设备逐步实现商品化和标准化,PC机或工作站的性能越来越高而价格越来越便宜,同时开源Linux微内核 及集群工具中间件技术也日趋成熟稳定,高性能计算集群逐渐发展起来.并成为主流的高性能计算平台。
The use of high performance computing clusters tO prototype,debug,and run parallel apphcations is becoming an increasingly popu-
enginee抽g far alternative tO using specialized,especially expensive,supercompuring phfforms.It is full of si.grlificance for scientific and
4简单并行例子
执行下面一段并行C语言程序heHo wodd,测试OSCAR集群环境。该 程序打印参与运算的结点主机名及进程ID,存储为bello.c,运用mpi命令进 行编译、运行:
972意万≯方电囊数知据识与接木
本栏目责任编辑:贾薇薇
······计算机工程应用技术·
#mpiec一0 hello hello.e #mpirun—np 4 hello Hello World!Proce¥8 l“4 011 oscamodel Hello World!Process 3 of 4 on oseamode2 Hello World!Process 2 of 4 on osearnode3 Hello World!Process 0 of 4 on oscamode4
从硬件架构看,集群结点可以是PCs、工作站、SMP服务器,甚至子集群。但集群各结点在保持本身计算机系统完备性的同时,能 够相互协作。形成单一、集成的计算资源。典型集群系统包括下列结构组件四。如图l所示。
多个高性能计算机(PCs、工作站或SMP); 分层或微内核结构的操作系统: 高性能互连网络: 网络接口卡;
This paper provides a case study about OSCAR.cluster with five PCs nodes and fast Ethemet interconnect,and then run some simple parallel examples on it. Key words:High performance computing;Cluster;OSCAR;MPl;Parallel computing
高性能计算集群逐渐替代专用、昂贵的超级计算机对大规模并行应用构建原型、调试和运行。 基于PCs或工作站的高性能计算快速部署及其可靠性和可管理性研究.对高性能计算集群在科学研究和工程计算等领域的 应用.促进高性能计算技术的应用方面具有深远的意义。 本文以OSCAR.集群为实例,部署一个五结点的集群环境并运行简单的并行测试例子。 关键词:高性能计算;集群;OSCAR.;MPI;并行计算 中图分类号:TP312 文献标识码:A 文章编号:1009-3044(2008)14-20971—略
使用高性能计算集群对并行应用构建原型、调试、运行逐渐替代使用专用,特别是昂贵的并行计算平台。一些集群软件工具套 件已经具有很多的整合性、可管理性、易配置.例如OSCAR}_t等工具套件。研究基于PCs或工作站的高性能计算集群快速部署及其 可管理性和可靠性研究,对高性能计算集群在科学研究和工程计算等领域的应用,促进高性能计算技术的应用方面具有深远的意 义。
Linux-based High Performance Computing Clusters Design and hn#ementation
LI Hong——mei (Ar山ui XinhLla University,Hefei 230088,Chum) Abstract:As components of computers and network are increasing tO achieve commercialization and standardization,the performance of PCs or workstatiom is increasing while the price is becoming cheaper.At the same mne,Linux kernel and open—source cluster middleware technology are becoming increasingly n'mture and stable.Clusters are mainstream lligll performance computing platforms gradually.
性能计算技术的应用方面具有深远的意义。接下来的工作将集中在集群环境的可靠性及可管理性研究,是高性能计算集群更好地 为科学、工程计算服务。
参考文献:
【1】Thomas E.Anderson,David E.Culler,David A.Patterson et a1.,”A Case for NOW(Networks of Workstations),"IEEE Micro,February
2集群系统架构
高性能计算集群是一种并行处理系统,由多个连接在一起的独立计算机组成,像一个单独集成的计算资源一样协同工作明,用 来解决具有重大挑战的问题。集群是全体计算机(结点)的集合,这些计算机由高性能网络或局域网物理互连。一般情况下,每个计 算机结点是一台PC机、工作站或SMP服务器。重要的是,所有集群结点能一起协同工作,如同一个单一集成的计算资源提供服务。 集群概念带来了许多好处,其中重要的是能用性、可用性、可扩展性和性能价格比。
自1994年美国航空航天局(NASA)的Goddard航天中心采用16个66MHz处理器的PCs和10Mbit/s以太网组成了第一个计算 机集群系统(Beowulf Cluster)t2j以来,随着计算机制造技术的飞速发展,硬件设备逐步实现商品化和标准化,PC机的性能越来越高而 价格越来越低;同时开源的Linux操作系统内核及集群工具套件(ClusterToolkit)也日趋成熟稳定,高性能计算集群逐渐发展起来, 成为主流的高性能计算平台.在2007年11月Top500的分析报告中,采用集群架构的超级计算机系统已占81.20/d31。
3集群系统构建
2001年,Open Cluster Croup发布开源集群应用资源(Open Source Cluster Application Resources,OSCAR)。该集群工具套件具有 以下特点:统一框架中安装、配置和管理集群;基于向导(Wizard)的集群组件安装;统一的结点映像。OSCAR集群工具套件提供了构 建和运行一个高性能计算集群所需要的工具。在安装OSCAR的同时也默认安装了并行编程环境MPI、PVM及作业凋度系统PBS等 软件包。其中系统安装套件(SIS),集群控制工具套件(C3),环境切换器(switcher)和OSCAR向导用于集群系统的安装和配置。SIS 是一个基于映像的安装包,可通过使用SIS来引导节点的安装:内核引导,磁盘分区.和操作系统的安装等。C3方便并行命令的执 行,使用户输入的命令可同时在所有的节点上运行。用户可以用环境切换器来定制环境变量。OSCAR向导提供了一个图形化界面来 帮助用户完成集群系统的安装和配置。
#include”mpi.h” 撕nclude<stdio.h>
#include<math.h> int main(int argc,char 4argv[]) lint myid,numprocs; int namelen; char processor name[MPI_MAX-PROCESSOR NAME]; MPI—Init(&argc,&argv); MPI_Comm_rank(MPl_COMM_WORLD,&myid); MPI_Comm_size(MPI_COMM_WORLD.&numprocs); MPI—Get_processor_name(processor name,&namelen); fprinff(stderr,”Hello World!Process%d of%d orl%s、Il”。 myid,numprocs,processor..name); MPI—Finalize0;
971
万方数据
\.计算机工程应用技术......
本栏目责任编辑:贾薇薇
图ຫໍສະໝຸດ Baidu 集群系统架构
快速通信协议与服务; 含单一系统映像(SSI)、高可用性(HA)I具和资源管理与调度的集群中间件: 诸如消息传递接口(MPI)脚等并行编程环境与工具; 串行、并行或分布式等应用。
’
)
5结论
本文在研究高性能计算集群的发展技术及体系结构的基础上,以OSCAR集群为实例。快速部署一个五结点的集群环境并运行
简单的并行测试例子。高性能计算集群将逐渐替代专用、特别是昂贵的超级计算机对大规模并行应用构建原型、调试和运行。基于
PCs或工作站的高性能计算快速部署及其可靠性和可管理性研究,对高性能计算集群在科学研究和工程计算等领域的应用,促进高
computing applications tO research on deployment high performance computing clusters based on PCs or workstatiom rapidly at well as its reliability and manageability.
1引言
自20世纪90年代早期以来,昂贵而特制的并行超级计算机逐渐向由单个或多个处理器的PCs或工作站¨】组成的价廉、通用、 松耦合的系统转换。而促成该转换的主要驱动力是高性能工作站和网络部件的快速商品化。这些技术的发展使网络化计算机(PCs 或工作站)成为并行处理的理想工具.从而导致了普通商品化超级计算机的出现。
本研究课题以5台Pc8结点,100Mbiffs以太网互连网络搭建一个OSCAR集群环境。 (1)硬件环境 管理结点:一台Intel Pentium3 2.0GHz处理器,256MB内存,20GB硬盘存储。 计算节点:四台Intel Pentium3 2.0GHz处理器,256MB内存,20GB硬盘存储。 互连网络:100Mbiffs以太网交换机。 (2)软件环境 操作系统:Red Hat Enterprise LinlLX 4。 OSCAR版本:5.0,已集成以下软件工具包: Open MPI 1.1.1:并行编程环境: Maul 3.2.6p14 4-Torque 2.0.0p8:作业调度系统; SGE 6.0uS:作业调度系统: LAM/MPI 7.1.2:并行编程环境: MPICH 1.2.7:并行编程环境: Ganglia 3.0.3:集群状态I监控系统: SC3:扩展的C3集群管理工具; Netbootm萍":管理结点PXE启动: sync_files 2.4:控制异构集群中用户的数据库: packman 2.8:包抽象管理器; systeminstaller-oscar 2.3.1:应用paekman创建映像image: Systemconfigurator 2.2.7—12ef:安装配置框架。 OSCAR安装向导用提供了一个图形化界面来帮助用户完成集群系统的 安装和配置。如图2所示。该向导将引导用户方便快捷地进行集群的安装和 配置,用只需要按步骤点击向导按钮.每一个步骤都会有<Help>按钮.点击 显示该步骤的目的。 按照此向导逐步执行,最后配置结点从网络启动,等待所有的结点从网 络启动并成功加载映像重启之后,安装向导执行完毕.OSCAR集群系统的安 装完成。
本栏目责任编辑:贾薇薇
......计算机工程应用技术.,/
Linux高性能计算集群的设计与实现
孕红梅
(安徽新华学院信息工程学院,安徽合肥230088)
摘要:计算机和网络硬件设备逐步实现商品化和标准化,PC机或工作站的性能越来越高而价格越来越便宜,同时开源Linux微内核 及集群工具中间件技术也日趋成熟稳定,高性能计算集群逐渐发展起来.并成为主流的高性能计算平台。
The use of high performance computing clusters tO prototype,debug,and run parallel apphcations is becoming an increasingly popu-
enginee抽g far alternative tO using specialized,especially expensive,supercompuring phfforms.It is full of si.grlificance for scientific and
4简单并行例子
执行下面一段并行C语言程序heHo wodd,测试OSCAR集群环境。该 程序打印参与运算的结点主机名及进程ID,存储为bello.c,运用mpi命令进 行编译、运行:
972意万≯方电囊数知据识与接木
本栏目责任编辑:贾薇薇
······计算机工程应用技术·
#mpiec一0 hello hello.e #mpirun—np 4 hello Hello World!Proce¥8 l“4 011 oscamodel Hello World!Process 3 of 4 on oseamode2 Hello World!Process 2 of 4 on osearnode3 Hello World!Process 0 of 4 on oscamode4
从硬件架构看,集群结点可以是PCs、工作站、SMP服务器,甚至子集群。但集群各结点在保持本身计算机系统完备性的同时,能 够相互协作。形成单一、集成的计算资源。典型集群系统包括下列结构组件四。如图l所示。
多个高性能计算机(PCs、工作站或SMP); 分层或微内核结构的操作系统: 高性能互连网络: 网络接口卡;
This paper provides a case study about OSCAR.cluster with five PCs nodes and fast Ethemet interconnect,and then run some simple parallel examples on it. Key words:High performance computing;Cluster;OSCAR;MPl;Parallel computing
高性能计算集群逐渐替代专用、昂贵的超级计算机对大规模并行应用构建原型、调试和运行。 基于PCs或工作站的高性能计算快速部署及其可靠性和可管理性研究.对高性能计算集群在科学研究和工程计算等领域的 应用.促进高性能计算技术的应用方面具有深远的意义。 本文以OSCAR.集群为实例,部署一个五结点的集群环境并运行简单的并行测试例子。 关键词:高性能计算;集群;OSCAR.;MPI;并行计算 中图分类号:TP312 文献标识码:A 文章编号:1009-3044(2008)14-20971—略
使用高性能计算集群对并行应用构建原型、调试、运行逐渐替代使用专用,特别是昂贵的并行计算平台。一些集群软件工具套 件已经具有很多的整合性、可管理性、易配置.例如OSCAR}_t等工具套件。研究基于PCs或工作站的高性能计算集群快速部署及其 可管理性和可靠性研究,对高性能计算集群在科学研究和工程计算等领域的应用,促进高性能计算技术的应用方面具有深远的意 义。
Linux-based High Performance Computing Clusters Design and hn#ementation
LI Hong——mei (Ar山ui XinhLla University,Hefei 230088,Chum) Abstract:As components of computers and network are increasing tO achieve commercialization and standardization,the performance of PCs or workstatiom is increasing while the price is becoming cheaper.At the same mne,Linux kernel and open—source cluster middleware technology are becoming increasingly n'mture and stable.Clusters are mainstream lligll performance computing platforms gradually.
性能计算技术的应用方面具有深远的意义。接下来的工作将集中在集群环境的可靠性及可管理性研究,是高性能计算集群更好地 为科学、工程计算服务。
参考文献:
【1】Thomas E.Anderson,David E.Culler,David A.Patterson et a1.,”A Case for NOW(Networks of Workstations),"IEEE Micro,February
2集群系统架构
高性能计算集群是一种并行处理系统,由多个连接在一起的独立计算机组成,像一个单独集成的计算资源一样协同工作明,用 来解决具有重大挑战的问题。集群是全体计算机(结点)的集合,这些计算机由高性能网络或局域网物理互连。一般情况下,每个计 算机结点是一台PC机、工作站或SMP服务器。重要的是,所有集群结点能一起协同工作,如同一个单一集成的计算资源提供服务。 集群概念带来了许多好处,其中重要的是能用性、可用性、可扩展性和性能价格比。
自1994年美国航空航天局(NASA)的Goddard航天中心采用16个66MHz处理器的PCs和10Mbit/s以太网组成了第一个计算 机集群系统(Beowulf Cluster)t2j以来,随着计算机制造技术的飞速发展,硬件设备逐步实现商品化和标准化,PC机的性能越来越高而 价格越来越低;同时开源的Linux操作系统内核及集群工具套件(ClusterToolkit)也日趋成熟稳定,高性能计算集群逐渐发展起来, 成为主流的高性能计算平台.在2007年11月Top500的分析报告中,采用集群架构的超级计算机系统已占81.20/d31。
3集群系统构建
2001年,Open Cluster Croup发布开源集群应用资源(Open Source Cluster Application Resources,OSCAR)。该集群工具套件具有 以下特点:统一框架中安装、配置和管理集群;基于向导(Wizard)的集群组件安装;统一的结点映像。OSCAR集群工具套件提供了构 建和运行一个高性能计算集群所需要的工具。在安装OSCAR的同时也默认安装了并行编程环境MPI、PVM及作业凋度系统PBS等 软件包。其中系统安装套件(SIS),集群控制工具套件(C3),环境切换器(switcher)和OSCAR向导用于集群系统的安装和配置。SIS 是一个基于映像的安装包,可通过使用SIS来引导节点的安装:内核引导,磁盘分区.和操作系统的安装等。C3方便并行命令的执 行,使用户输入的命令可同时在所有的节点上运行。用户可以用环境切换器来定制环境变量。OSCAR向导提供了一个图形化界面来 帮助用户完成集群系统的安装和配置。
#include”mpi.h” 撕nclude<stdio.h>
#include<math.h> int main(int argc,char 4argv[]) lint myid,numprocs; int namelen; char processor name[MPI_MAX-PROCESSOR NAME]; MPI—Init(&argc,&argv); MPI_Comm_rank(MPl_COMM_WORLD,&myid); MPI_Comm_size(MPI_COMM_WORLD.&numprocs); MPI—Get_processor_name(processor name,&namelen); fprinff(stderr,”Hello World!Process%d of%d orl%s、Il”。 myid,numprocs,processor..name); MPI—Finalize0;