ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:160.92KB ,
资源ID:23359994      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23359994.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(在 IBM POWER 服务器上使用 Infiniband 组建高性能计算集群.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

在 IBM POWER 服务器上使用 Infiniband 组建高性能计算集群.docx

1、在 IBM POWER 服务器上使用 Infiniband 组建高性能计算集群在 IBM POWER 服务器上使用 Infiniband 组建高性能计算集群罗 明, 软件工程师, IBM卜 俊辉, 软件工程师, IBM2011 年 5 月 10 日随着服务器处理速度的不断加快,高性能计算用户对网络传输速度也有着越来越高的要求,传统意义上的以太网,已经无法满足这种需求。InfiniBand 网络标准就是在这种情况下应运而生的,它在很大程度上解决了传统以太网络的高延迟瓶颈问题 , 运行速度可达到每端口 2.5Gb/s 到 10Gb/s。目前,IBM POWER 服务器和高性能计算软件套件对 Inf

2、iniband 提供了全面的支持,本文将逐一介绍 InfiniBand 技术架构,以及如何在 IBM POWER 服务器的 AIX 系统上配置 InfiniBand 网络设备,并使用 IBM 高性能软件套件构建高性能计算集群。Infiniband 的基本概念网络是常常被认为是路由器、交换机和插在服务器和存储设备上的电缆的集合。在大部分人的印象里,网络用来连接服务器到其他服务器、存储和其他网络。其实,这是一种普遍存在的对网络的片面看法,它将过多的注意力集中在处于网络底层结构的电缆和交换机上。这是典型的“以网络为中心的”观点:认为网络的构成架构应该决定应用程序的通讯模式。Infiniband 网络

3、则基于“以应用程序为中心”的新观点。它的提出来源于一个简单的问题:如何让应用程序访问其他应用程序以及存储尽可能的简单、高效和直接?如果以“应用程序为中心”的观点来思考 I/O 问题,就能得到一种与传统完全不同的网络架构。Infiniband 基于一种非常简单的原则:提供一种易于使用的消息服务。这个服务可以被用来与其他应用程序、进程或者存储进行通信。应用程序不再向操作系统提交访问其他资源的申请,而是直接使用 Infiniband 消息服务。Infiniband 消息服务是一个非常高效、直接的消息服务,它摒弃了传统网络和应用程序之间消息传递的复杂结构。直接使用 Infiniband 服务意味着应用

4、程序不再依赖操作系统来传递消息,这大大提高了通信效率。如图 1,Infiniband 消息服务可以在两个应用程序之间创建一个管道,来使应用程序之间直接进行通信,从而绕过了操作系统,大大提高了效率。图 1. Infiniband 通信连接原理回页首Infiniband 在 HPC(High performance computing)领域的应用高性能计算(HPC)是一个涵盖面很广的领域,它覆盖了从最大的“TOP 500”高性能集群到微型桌面集群。这篇文章里的我们谈及的 HPC 是这样一类系统,它所有的计算能力在一段时间内都被用来解决同一个大型问题。换句话说,我们这里讨论的 HPC 系统不会被用来

5、运行传统的企业应用,例如:邮件、计费、web 等。一些典型的 HPC 应用包括:大气建模、基因研究、汽车碰撞模拟、流体动态分析等。图 2 显示了一个标准的高性能集群(HPC)的拓扑结构。可以看到,在高性能计算集群中,各种设备是通过集群的交换网络连接到一起的。所以,高性能计算系统除了需要高性能的中央处理器外,还需要高性能的存储和低延迟的进程间通信来满足科学运算的需求。在大型集群中高速的交换网络扮演了非常重要的角色,甚至比 CPU 还要关键,处于集群的核心位置。大量的实验数据表明,集群的性能和可扩展性主要和消息在节点之间的传递速度有关,这意味着低延迟的消息传递是被迫切需求的,而这正是 Infini

6、band 的优势。下面我们就介绍下 Infiniband 为什么比传统网络更适合高性能计算系统。图 2. 高性能计算集群拓扑根据我们对高性能计算系统的认识,Infiniband 的低延迟、高带宽和原生的通道架构对于此类系统来说是非常重要的。低延迟的 Infiniband 网络可以在保证性能的前提下,增大集群的规模。通道 I/O 架构则可以提供可扩展的存储带宽性能,并且支持并行文件系统。说道 HPC 就不能不提 MPI(Message Passing Interface)。MPI 是应用在 HPC 上主要的消息传递中间件标准。虽然 MPI 也可以应用在基于共享内存的系统上,但是,更多的则是被当作

7、通讯层用作连接集群中的不同节点。MPI 通讯服务依赖于底层的提供节点间真正信息传递的消息服务。Infiniband 作为一种底层消息服务为 MPI 层提供了被称为 RDMA(Remote Direct Memory Access)的消息服务。在上面一章,我们讨论了应用程序之间如何通过 Infiniband 通讯架构来实现直接的通讯,从而绕过操作系统。在 HPC 中,我们可以认为 HPC 应用程式调用 MPI 通讯服务,而 MPI 则利用底层的 RDMA 消息服务实现节点间通讯。这就使得,HPC 应用程序具备了不消耗集群 CPU 资源的通讯能力。IBM PE(Parallel Environme

8、nt)软件作为一种 MPI 标准的实现,加入了对 Infiniband 的支持。本文后面的章节会介绍如何启用 PE 对 Infiniband 的支持。回页首通过 HMC 为 IBM POWER 服务器配置 Infiniband 适配器要想使用 Infiniband 高速网络,首先需要对硬件进行配置。IBM Power 服务器提供了对 Infiniband 设备的原生支持,用户可以通过 HMC 进行统一管理。通过虚拟化,用户可以方便的将单个 12 倍速的 Infiniband 端口分配给最多 16 个逻辑分区使用。下面我们就一步步的介绍如何在一个逻辑分区上增加 Infiniband 设备。1.

9、首先点选需要配置 Infiniband 适配器的逻辑分区,在下拉列表中点选 Configuration Manage Profiles图 3. 选择逻辑分区(查看大图)2. 在新弹出的窗口中选择 Edit:图 4. 编辑逻辑分区配置文件3. 在 HCA 的标签页面中,选中要分配的 Infiniband 设备,并点击 Configure:图 5. 选择 Infiniband 适配器4. 在新弹出的窗口中,为这个适配器分配一个 GUID index:图 6. 配置 Infiniband 设备属性到此为止,我们就成功的为一个逻辑分区分配了一个新的 Infiniband 适配器。接下来我只需要在 AI

10、X 系统中配置一下,Infiniband 适配器就可以正常使用了。配置方法可以参考 developerWorks 中国上的文章“为 AIX 配置 Infiniband”。回页首使用 NIM 安装高性能计算集群上的 AIX 系统在使用 HMC 配置完 Infiniband 网络设备以后,我们还需要为集群中每台的节点上安装好 AIX 操作系统,由于集群的节点众多,使用网络安装是最常见快速的方法。由于篇幅关系,本文在这里不再讲解如何使用 AIX 再带的网络安装系统(NIM)来自动化的安装 AIX 操作系统,具体方法请各位读者参考 developerWorks 相关文章“Unix/Linux 系统自动

11、化管理 : 网络自动化安装”。回页首在 IBM POWER 上配置 IBM Parallel Environment 使用 Infiniband 网络在安装完集群的系统后,要想让 HPC 应用软件使用 Infiniband 网络,我们还需要安装配置支持 Infiniband 网络的 MPI 通讯软件。IBM Parallel Environment(PE) 是一个针对 HPC 并行程序的开发和运行环境,它提供了对 Infiniband 网络的支持,用户的并行程序可以通过 PE 运行在高速 Infiniband 网络上。IBM PE 由消息传递函数库(如:MPI),并行运行环境(POE),调试工

12、具(PDB)组成。IBM PE 实现了两种通讯库 -IP(internet protocol) 和 US(user space)。这两种通讯库是对于用户来说是完全透明的,它们使用统一的应用程序编程接口。也就是说使用 IP 协议的程序可以无需修改就运行在 US 模式。US 模式是 PE 专门为 Infiniband 高速网络设计的通讯子库,能最大限度的发挥 Infiniband 网络的优势。从 PE 5.2 版本开始,PE 拥有了无需借助资源管理器(例如:IBM LoadLevler)在 Infiniband 网络上运行 US 任务的能力。下面我们就简单介绍下,如何使用 PE 在 Infinib

13、and 网络上运行 US 模式的任务。安装 IBM Parallel Environment在安装 IBM Parallel Environment 以前,请保证集群所有节点之间的 root 用户可以实现免密码的 rsh 自由登陆。然后使用下面的步骤安装 PE:1. 拷贝 IBM Parallel Environment 软件到一个节点的硬盘,这里我们假设拷贝到 /tmp 目录下2. 使用install a d /tmp ppe* 命令安装 IBM Parallel Environment 到这个节点3. 使用文档编辑器(如:vi)在 /tmp 下创建一个节点列表文件 (host.list),

14、里面包含所有节点名,例如:清单 1. 节点列表文件内容 host1 host2 host34. 执行PEinstall /tmp /host命令,IBM Parallel Environment 将会被安装到所有节点列表文件中列出的节点上。使用 IBM Parallel Environment 在 Infiniband 上进行高性能计算当使用 PE 来分配计算节点时,你需要先创建一个节点列表文件,就像上一节我们创建的列表文件一样。1. 如何使用单个 Infiniband 网络适配器:如果系统中只有一个 IB(Infiniband) 适配器,我们只需要设置如下的环境变量就可以使我们的程序利用 I

15、B 网络进行数据交换: MP_EUIDEVICE=sn_single MP_INSTANCES=max MP_EUILIB=us2. 如何使用多个 Infiniband 网络适配器PE MPI 支持将消息数据条带化的分配到多个 Infiniband 适配器上进行传输,以充分利用通信带宽。如果系统拥有多于一个的 IB 交换网络,资源管理器将从多个适配器上来获取 IB 资源。(一个交换网络是指连接到同一个交换机上的 IB 设备构成的网络。)如果系统只有一个交换网络,PE 将尽量从不同的适配器上获得资源,但是当其中一个适配器上资源不足时,PE 将只从单独的适配器上获得资源。并且,如果其中一个 IB

16、网络通道出现问题,PE 会自动将通讯转移到其它替换通道上。为了激活条带化功能,我们需要设置如下的环境变量: MP_EUIDEVICE=sn_all MP_INSTANCES=max(如果只有一个的 IB 交换网络,无需设置这个环境变量) MP_EUILIB=us设置好环境变量后,我们就可以使用 poe 命令,使用 IB 网络提交作业了。清单 2. 提交作业 bash-3.2# poe hello procs 10虽然从 PE 5.2 开始,PE 可以脱离 IBM LoadLevler 做简单的资源配置工作,但是,对于大型的 HPC 网络,我们还是建议使用 LoadLevler 来进行作业调度和

17、资源管理。下面一节我们就来介绍如何使用 LoadLevler 配合 PE 利用 Infiniband 网络提交作业。回页首在 IBM POWER 上配置 IBM LoadLevler 使用 Infiniband 网络IBM LoadLevler 是一个高性能计算集群上任务管理系统。它可以最大化的利用现有系统中的资源,使用户能在有限的时间内运行尽量多的任务。IBM LoadLevler 可以在动态的环境中安排任务,并提供高效的提交和处理任务的功能。快速安装 IBM LoadLevler下面的步骤需要在集群中的所有节点上执行,你可以通过使用 IBM xCat 中的 xdsh 命令来同步执行下面的步

18、骤,具体的方法请参考 xCat 的使用手册。1. 在安装 IBM LoadLevler 前,需要在集群系统的所有节点上建立一个 loadl 用户。清单 3. 创建 loadl 用户示例 bash-3.2# mkgroup -a loadl bash-3.2# mkuser pgrp=loadl groups=loadl home=/u/loadl loadl bash-3.2# lsuser loadl loadl id=1018 pgrp=users groups=loadl home=/u/loadl shell=/bin/bash gecos=loadl login=true su=tr

19、ue rlogin=true2. 拷贝 IBM LoadLevler 软件包到指定目录,这里我们假设拷贝到/tmp目录下。可以使用下面的命令安装软件包,或者使用 SMIT 工具:清单 4. 安装 loadlevler installp -Y -X -d device LoadL.resmgr.full LoadL.scheduler.full installp -X -B -d device LoadL.resmgr.full LoadL.scheduler.full3. 初始化 LoadLevler 配置:清单 5. 初始化 LoadLevler bash-3.2# su - loadl b

20、ash-3.2# cd /usr/lpp/LoadL/scheduler/full/bin bash-3.2# ./llinit -local /var/loadl -release /usr/lpp/LoadL/full -cm 在 LoadL 里不需要对 Infiniband 网卡做专门的配置,LoadL 会自动从系统中获得所有网络适配器的信息。4. 检查在 LoadL 的 LoadL_admin 文件中定义的集群节点,将他们设置到pool_list=1清单 6. LoadL_admin 文件 Hostname1: type = machine central_manager = true

21、 pool_list = 1 hostname2: type = machine pool_list = 1 hostname2: type = machine pool_list = 1 hostname2: type = machine pool_list = 1使用 LoadL 运行高性能计算程序使用 LoadL 来自动分配计算资源,可以借助 LoadL 强大的调度功能,提高高性能集群系统的资源利用率,关于如何使用 LoadL 来做任务调度请参考相关的 LoadL 的管理文档,本文不做进一步的介绍。要使用 LoadL 来做资源管理器,需要设置MP_RMPOOL和MP_RESD环境变量,根

22、据上文,我们在 LoadL 配置文件中将系统的资源都设置到pool_list1中,这里我只需要使用命令:清单 7. 设置 MP_RMPOOL 和 MP_RESD: bash-3.2#export MP_RMPOOL=1 bash-3.2#export MP_RESD=yes另外,我们仍然需要设置MP_EUIDEVICE、MP_INSTANCES、MP_EUILIB,设置方法和第四章的方法相同设置好环境变量后,我们就可以使用poe命令,通过 IB 网络提交作业了。清单 8. 提交作业 bash-3.2# poe hello procs 10回页首小结本文介绍了为什么新一代的高性能计算集群要使用

23、Infiniband 高速网络。以及如何从头一步步的配置 IBM POWER 服务器上的 Infiniband 设备,并使用 IBM 的高性能计算软件 LoadLevler 和 PE 充分利用 Infiniband 的优势进行科学计算。由于篇幅关系,本文并没有介绍如何安装 Infiniband 硬件和如何安装系统,请读者阅读参考文献中的相关文档。参考资料学习 IBM Publication:Parallel Environment for AIX and Linux V5.2.1 Installation: IBM PE 软件的安装文档。 IBM Publication:Parallel En

24、vironment for AIX and Linux V5.2.1 Operation and Use: IBM PE 软件的使用指南。 IBM Publication:Tivoli Workload Scheduler LoadLeveler for AIX V4.1 Installation Guide: IBM Loadleveler 软件的安装指南。 Infiniband 介绍文档 :Intro_to_IB_for_End_Users: Infiniband 标准组织撰写的,介绍 IB 基础知识的文章。 IBM 红皮书 :Introduction to InfiniBand for

25、IBM pSeries: 通过本文了解 IBM POWER 服务器在 infiniband 网络方面所做的支持。 Unix/Linux 系统自动化管理 : 网络自动化安装: 本文是 Unix/Linux 系统管理自动化系列中的一篇,介绍使用 AIX NIM 软件包批量化安装 AIX 系统。 为 AIX 配置 Infiniband: 介绍如何配置 Infiniband 和在 AIX 上设置 IP over Infiniband 接口。 AIX and UNIX 专区:developerWorks 的“AIX and UNIX 专区”提供了大量与 AIX 系统管理的所有方面相关的信息,您可以利用它

26、们来扩展自己的 UNIX 技能。 AIX and UNIX 新手入门:访问“AIX and UNIX 新手入门”页面可了解更多关于 AIX 和 UNIX 的内容。 AIX and UNIX 专题汇总:AIX and UNIX 专区已经为您推出了很多的技术专题,为您总结了很多热门的知识点。我们在后面还会继续推出很多相关的热门专题给您,为了方便您的访问,我们在这里为您把本专区的所有专题进行汇总,让您更方便的找到您需要的内容。 AIX and UNIX 下载中心:在这里你可以下载到可以运行在 AIX 或者是 UNIX 系统上的 IBM 服务器软件以及工具,让您可以提前免费试用他们的强大功能。 IBM Systems Magazine for AIX 中文版:本杂志的内容更加关注于趋势和企业级架构应用方面的内容,同时对于新兴的技术、产品、应用方式等也有很深入的探讨。IBM Systems Magazine 的内容都是由十分资深的业内人士撰写的,包括 IBM 的合作伙伴、IBM 的主机工程师以及高级管理人员。所以,从这些内容中,您可以了解到更高层次的应用理念,让您在选择和应用 IBM 系统时有一个更好的认识。讨论 加入developerWorks 中文社区。查看开发人员推动的博客、论坛、组和维基,并与其他 developerWorks 用户交流。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1