辅导老师:隋秀峰 邮箱:sxf@mail.ustc.edu.cn 2008年10月22日 Lab3:MPI Programming 辅导老师:隋秀峰 邮箱:sxf@mail.ustc.edu.cn 2008年10月22日.

Slides:



Advertisements
Similar presentations
C enter of C omputational C hemistry 并行计算机与并行计算 张鑫 理论与计算化学国际合作研究中心 分子反应动力学国家重点实验室.
Advertisements

第 3 章操作系统基础 3.1 操作系统概述 3.2 操作系统的功能模块 3.3 典型操作系统概述.
计算机基础 与应用案例教程 第一篇 基础理论篇 第4章 计算机软件系统.
Linux 安裝入門與基本管理 課程目標: 學習Linux平台下的安裝設定 與 建置一個基本的Linux伺服器
上課教材 Database Slide Windows筆電 (32 bit)
Foundations of Computer Science
龙芯多媒体电脑教室培训 龙梦极域电子教室 江苏龙芯梦兰科技股份有限公司.
Linux 網路教學 東南技術學院資訊工程系 職稱:講師 姓名: 曹茂勁 民國 92年 12月.
Linux并行计算平台搭建及应用 王彦棡 2010年5月.
集群作业管理系统简介 报告人:罗正平 导 师:肖炳甲研究员.
技术支持部 张新凤( ) 并行机群系统安装、使用和管理 技术支持部 张新凤( )
操作系统原理 Principles of Operating System
前言 1.课程安排: 第一章 操作系统引论(7学时) 第二章 进程管理(14学时) 第三章 处理机调度与死锁(10学时)
信息系统 应急解决方案 北京神州讯安科技有限公司
Network Storage and System Virtualization Technology
有趣的linux入门文章 By dogfox 制作.
操作系统结构.
计算机导论 第4讲 微型计算机硬件系统 1.
Windows Server 2003操作系统相关配置
UClinux在3000平台上的移植.
資訊安全與系統管理 2013/3/13 Chien wei lin.
UNIX系統與資料庫安裝 Why UNIX 常用的工具程式介紹 資料庫的安裝.
计算机系统安全 第10章 常用攻击手段.
“服务器服务于Internet”报告会 倪光南 1999年7月6日
當企鵝龍遇上小飛象 DRBL-Hadoop Jazz Wang Yao-Tsung Wang
作業系統的結構 日期 : 2018/9/17.
Linux 的進階檔案處理.
第8章 Linux系统管理.
Confidential Property
Linux.
作業系統 第十三章 檔案系統實例.
第 19 章 檔案系統與 權限設定.
台灣大學計算機及資訊網路中心 教學研究組 張傑生
C H A P T E R 11 体系结构对操作系统的支持.
物流信息技术 Logistics Information Technology
计算机应用基础 第二章 操作系统基础 2018/11/16.
第4章 作業系統的介紹及操作.
作 業 系 統 第三組 楊育翰 顏瑞霖.
MPI并行编程      报告人:李俊照.
Linux 圖形操作介面 GUI -- X-window 與 Webmin
讲师:田家华 第1章 认识计算机 本章要点   计算机的发展 计算机的组成.
曙光信息产业(北京)有限公司 技术支持中心 戴荣 2007年12月
信息存储与管理 国家天文台 (科技处)信息与计算中心.
启天IV产品介绍
讲议: PXE 介绍及实现 Jarvis
第二天 计算机基础技能培训 (一)linux基础知识
曙光集群简明使用手册 技术支持中心.
第2章 Linux概述 2.1 操作系统的功能和分类 2.2 Linux操作系统概述 2.3 Linux的应用现状与前景
伺服器探索營 Day 1 指導老師: 張啟中 (JohnAxer) 教學助理:
第8章 配置Linux网络 本章将从介绍Webmin软件开始,详细介绍各种网络相关的配置,如设置以太网接口连接Internet、DHCP服务器架设、设置NFS实现Unix/Linux系统间文件共享和架设DNS服务器等。通过本章学习,用户可以到相关的网络知识,并能深入理解Fedora提升用户使用该操作系统的能力。
1-1-1作業系統的功能 提供使用者操作介面 提供程式執行環境 控制輸入\輸出程序 分配系統資源 管理與維護磁碟中的檔案
岗位技能(二)Linux系统配置与管理 项目3 TCP/IP网络接口配置
第 20 章 帳號與磁碟空間管理 著作權所有 © 旗標出版股份有限公司.
作業系統 (Operating System)
利用ICE通信中间件构建分布式应用程序开发框架
7.1.1 设备管理的功能(P95) 分配设备:按设备的不同类型和操作系统选用的算法分配。包括分配相应的通道、设备控制器以及对未分配到的任务或怍业进行排队等; 控制和实现真正的输入输出操作。包括通道程序控制、启动设备、及时响应及处理中断讯号等; 对输入输出缓冲区进行管理。例如逻辑名的管理,多个缓冲区的分时以及串并行操作,同类多个外部设备的均衡工作,避免“忙的忙”和“闲的闲”;
系统管理员培训(I期) 浙江省基层人民法院 -V8版介绍及系统管理培训 二OO八年四月二十三日 法院事业部经理:周春宏
第5章 网站服务器搭建与管理.
操作系统的结构和硬件支持 第2章 操作系统的结构和硬件支持.
靜宜大學專用 PowerPoint 檔案 數位教材
第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能
架构师成长感悟 吴隆烽
第12章 Linux與 嵌入式uClinux系統
作業一: 安裝Linux於btrfs上 中正大學 作業系統實驗室 指導教授:羅習五
售后培训系列之V9系统中心安装 SecManage 网安事业部 广州售后-王长绪.
Linux网络配置管理.
作業系統概論 授課老師: 羅習五.
Linux文件系统.
第六章 文件系统与文件管理 6.4 Linux文件管理 1、比较MS DOS 与 Linux的目录结构 一、Linux文件系统的树形结构
Presentation transcript:

辅导老师:隋秀峰 邮箱:sxf@mail.ustc.edu.cn 2008年10月22日 Lab3:MPI Programming 辅导老师:隋秀峰 邮箱:sxf@mail.ustc.edu.cn 2008年10月22日

内容 PC机群的搭建 机群系统概述 硬件的选择与安装 软件的选择与安装 机群系统性能评测

机群系统概述 什么是机群? 机群是一组独立的计算机(节点)的集合体,节点间通过高性能的互连网络连接;各节点除了可以作为一个单一的计算资源供交互式用户使用外,还可以协同工作并表现为一个单一的、集中的计算资源供并行计算任务使用。 一种造价低廉、易于构筑、并且具有较好可扩放性的并行机体系结构。

机群迅速发展的原因 作为机群节点的工作站系统的处理性能越来越强大,更快的处理器和更高效的多CPU机器将大量进入市场; 随着局域网上新的网络技术和新的通信协议的引入,机群节点间的通信能获得更高的带宽和较小的延迟; 机群系统比传统的并行计算机更易于融合到已有的网络系统中去; 机群上的开发工具更成熟,而传统的并行计算机上缺乏一个统一的标准; 机群价格便宜并且易于构建; 机群的可扩放性良好,节点的性能也很容易通过增加内存或改善处理器性能获得提高。

机群的重要特征 机群的各节点都是一个完整的系统,节点可以是工作站,也可以是PC机或SMP机器; 互连网络通常使用商品化网络,如以太网、FDDI、光通道等,部分商用机群也采用专用网络互连; 网络接口与节点的I/O总线松耦合相连; 各节点有一个本地磁盘; 各节点有自己的完整的操作系统。

机群的分类 根据不同的标准,可有多种分类方式 针对机群系统的使用目的可将其分为三类: 高性能计算机群 负载均衡机群 高可用性机群

Berkeley NOW Beowulf LAMP 典型机群系统 COTS(Commodity off the shelf) SMP-cluster

硬件的选择与安装 节点构建 系统构建 机群系统示例 处理器、内存、总线、 磁盘与I/O 网络适配卡、交换机 天体物理中心64个节点PC机群 1个服务节点(兼作计算节点)和63个计算节点

集群系统示例 服务节点配置: 计算节点配置: CPU:Pentium Ⅳ 2.0G(512KB全速二级缓存) 内存:1G(2512M)Rambus 硬盘:80GB IDE 主板:ASUS P4T Socket 423 网卡:3com 905 –TX(两个) 显卡、显示器、键盘、鼠标、光驱、软驱:略 计算节点配置: CPU:Pentium Ⅳ 1.5G(512KB全速二级缓存) 内存:512MB(2256M) Rambus 硬盘:40GB IDE 网卡:3com 905 –TX

集群系统示例(续) 交换设备由2个3com 3c16980和1个3com 3c16985的交换机通过一个matrix module堆叠而成,并安装了一个千兆光纤模块,以备服务节点连接内部机群的网卡升级为千兆网卡

软件的选择与安装 OS的选择 SSI的构建 编程环境的选择

OS的选择 Windows UNIX Linux 机群系统示例 Redhat 7.2版本(内核2.4.10)

SSI的构建 单一系统映像SSI(Single System Image) 单一系统:尽管系统中有多个处理器,用户仍然把整个机群视为一个单一的系统来使用 单一控制:逻辑上,最终用户或系统用户使用的服务都来自只有唯一接口的同一个地方 对称性:用户可以从任一个节点上获得机群服务,也就是说,对于所有节点和所有用户,除了那些对一般访问权限作保护的服务和功能外,所有机群服务和功能都是对称的 位置透明:用户不用了解真正执行服务的物理设备的位置

SSI提供的三种服务 单一登录(Single Sign On) 单一文件管理(Single File Hierarchy) 单一作业管理系统(Single Job Management System)

两种方法 单一登录(Single Sign On) 网络信息系统NIS(Network Information System) Shell脚本(Shell Script)

网络信息系统NIS 服务器端: ①设置NIS域名: 在文件/etc/sysconfig/network中添加如下一行: NISDOMAIN=PCCluster ②初始化数据库: 运行/usr/lib/yp目录下的ypinit命令初始化系统信息数据库: [node0]# /usr/lib/ypinit –m ③启动守护进程: 在/etc/rc.d/rc3.d目录下增加两个链接,以便系统在启动时自动载入守护进程: [node0]# cd /etc/rc.d/rc3.d [node0]# ln –s ../init.d/ypserv S61ypserv [node0]# ln –s ../init.d/yppasswdd S61yppasswd

网络信息系统NIS(续) 客户端: 在客户节点上(node1到node63)运行setup命令,然后在出现的对话框中选择“Authentication Configuration”,选择NIS,填入域名PCCluster以及服务器名node0;并在文件/etc/passwd中加入以下一行: +::0 :0 :::

Shell脚本 NIS:设置方便,但是采用客户/服务器模式,在应用启动的时有可能产生瓶颈。 例如,对用户信息的管理,可以创建一个名为cluster_user的脚本,负责在其所在结点上创建新的用户,而后再将相关的配置文件(/etc/passwd、/etc/groups)复制到机群系统中所有其它节点,这里要注意的一点是用户的主目录应该建立在全局共享的分区中(NFS共享)。对其它的一些信息,比如/etc/hosts和/etc/host.equiv等文件可同样处理。

单一文件管理 NFS是一种Unix/Linux之间通过网络共享文件的标准方式。使用NFS,就能够透明的安装和访问网络上远程主机的文件系统,将其安装(mount)在本地的文件系统中,类似于Windows下的映射驱动器。 示例机群:节点node0是服务器,把目录/home和/Cluster进行共享;节点node1到node63是客户端,把服务器的/home和/Cluster安装到自己的文件系统当中。

单一文件管理(续) 服务器端: (1)启动服务进程:NFS服务器需要使用守护进程nfsd和mountd,通过在目录/etc/rc.d/rc3.d之下增加链接可以使系统在启动时自动载入这两个进程: [node0]# cd /etc/rc.d/rc3.d [node0]# ln –s ../init.d/nfs S60nfs

单一文件管理(续) (2) 设置共享目录:首先,在根目录下建立目录/home和/Cluster。 [node0]# mkdir home [node0]# mkdir Cluster 然后,在文件/etc/exports当中增加以下几行。 /home node1 (rw) /Cluster node1 (rw) …… /home node63 (rw) /Cluster node63 (rw) 这几行的意思是将服务器上的/home和/Cluster目录进行共享,设置节点node1到node63可以访问,rw表示允许读和写(缺省为只读)。这里要注意的一点是所有用到的主机名必须在文件/etc/hosts中给出ip地址,例如: 192.168.0.11 node1

单一文件管理(续) 客户端: 在文件/etc/fstab当中加入两行: node0:/home /home nfs node0:/Cluster /Cluster nfs 当然,相应的要在文件/etc/hosts中给出主机node0的ip地址: 192.168.0.10 node0 这样就完成了NFS在机群系统中的设置,以后所有用户的主目录都可以设置在/home中,所有可以共享安装的软件可以放在/Cluster中。

单一作业管理系统 用户可以透明地从任一节点提交一项作业,作业可以调度为以批处理、交互或并行的模式运行 用户服务器、任务调度器、资源管理器 典型的作业管理系统 PBS(Portable Batch System) LSF(Load Sharing Facility) Condor JOSS

编程环境的选择 流行的编程软件 MPICH的安装及配置 MPI、OpenMP、HPF 示例机群中构建了单一映象系统。64个节点(node0到node63)中node0共享/Cluster目录给所有其它节点。这样只需将MPICH安装在这个共享目录中即可,即整个系统中只需安装一次。

MPICH的安装 ①MPICH是一个开放源码的软件,所以可以从网上免费获取它的源代码。用户可以直接从MPICH的主页下载最新的软件包mpich.tar.gz,然后将它置于/Cluster目录下。 ②使用如下命令解压缩源代码: [node0]# tar –zxf mpich.tar.gz 解压缩后会生成一个名字为mpich-1.2.4的目录(目前版本为2.0+)。

MPICH的安装(续) ③进入该目录,并执行位于该目录下configure脚本,为下一步编译源代码进行准备。该配置脚本可以接受很多的参数(Options),通过运行命令如下: [node0]# ./configure –help 可以获取更详细的参数信息。这里只列举几个最常用的参数: -prefix:指定mpich的安装目录。 --with-device:指明所使用的通信系统类型。一般情况下我们使用ch_p4,它表示通常的TCP/IP通信系统。 --with-arch:指明所使用的操作系统的类型。 运行如下命令完成前期配置: [node0]# ./configure --prefix=/Cluster/MPICH \ --with-device=ch_p4 \ --with-arch=LINUX

MPICH的安装(续) ④最后,先通过运行su命令转变到root用户身份,再运行如下命令完成MPICH的编译和安装: [node0]# make [node0]# make install 至此就完成了机群系统中MPICH的安装。

MPICH的配置 ①第一步要进行rsh的配置,使系统中不同节点之间的rsh操作不需要密码的输入。这首先需要在每个节点的/etc/hosts文件中写入node0到node63的(主机名,IP地址)对;然后在/etc/host.equiv中写入所有的机群节点主机名,下面是node0上的这两个文件内容: [node0]# cat /etc/hosts 192.168.0.10 node0 192.168.0.11 node1 192.168.0.12 node2 …… 192.168.0.163 node63 [node0]# cat /etc/host.equiv node0 node1 node2 node63

MPICH的配置(续) ②第二步要更改MPICH的节点列表文件,该文件位于/Cluster/MPICH/share目录下。这里我们使用的arch参数是LINUX,相应的列表文件为machines.LINIUX。在这个文件中要写明机群系统中所有的节点的主机名。该文件以一定的方式指明了实际执行MPI程序时进程是如何分配到各个节点上的。 以下是示例机群中的machines文件: [node0]# cat /Cluster/MPICH/share/machines.LINUX node0 node1 node2 …… node63

MPICH的运行 MPICH中最常用的两个命令就是mpicc和mpirun。 mpicc是一个MPI编译器,它负责将源程序编译为可执行文件,它最常用的参数是-o用来指明输出文件。 [node0]# cd /Cluster/MPICH/examples [node0]# ../bin/mpicc cpi.c –o cpinew mpirun则是用来执行一个编译好的MPI程序。下面是它最常用的一些参数: -np <np>:用来指明所要生成的进程数。 -machinefile <machinefile name>:缺省时使用的machines文件是前面介绍过的位于share目录下的machines.LINUX;但通过这个参数可以指定一个临时的machines文件,从而使用不同的进程指派方式。 一个标准的mpirun命令如下: [node0]# ../bin/mpirun –np 10 cpinew – machinefile ./new_machine_file

MPICH的运行(续) [node0]# ./mpirun –np 10 cpi Process 1 on node1 pi is approximately 3.1416009869231249, Error is 0.0000083333333318 wall clock time = 0.015806

机群系统性能评测 基准测试程序(Benchmark) 性能分析工具 LINPACK、LAPACK、BLAS、BLACS、Livermore Loops、Dhrystone、Whetstone、NAS、SPEC、Sim LinPACK:Top500的标准测试程序 性能分析工具 监视程序的执行、产生性能数据、甚至能够作初步的分析,以帮助你更为容易的确定性能瓶颈的所在,从而找到改善的方案 DEEP 、MPE和Jumpshot 、Pablo、Paradyn

实验平台 曙光4000A超级计算机 IP:210.45.114.190 用户名:guest 密码:guest 路径:multicore/SA* 登陆工具:ssh、putty 编程环境:MPICH2

谢谢!