MPI集群
集群计算机是指用一组联网的PC或工作站来搭建成的,提供比单个PC(节点)计算性能高得多的计算机。
集群系统(Cluster)主要解决下面几个问题:
1.高可靠性(HA)。
2.高性能计算(HP)。
3.负载平衡。
HA:利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。
HP:充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,通常用于科学计算领域,比如基因分析,物理与化学分析等。
负载平衡:即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。
在实际应用中,最常见的情况是利用集群解决负载平衡问题,比如用于提供WWW服务。在这里主要展示如何使用LVS(Linux Virtial Server)来实现实用的WWW负载平衡集群系统
1. MPI安装
1.1 APT安装
软件包中包含了mpich,可以直接通过apt-get下载安装。
sudo apt-get install -y mpich
观察mpicc版本信息:
mpicc -v
1.2 安装包安装
2. 集群设置
- 安装SSH,设置SSH免密登录
- 设置NFS共享目录
2.1 安装SSH,设置SSH免密登录
所谓的公钥,相当于自家系统的一个身份标识,是公开的。所谓的私钥,相当于一个认证文件,本质上书写了允许哪些机器对你进行免密访问。
2.2 设置NFS共享目录
3. 基础编译坏境配置
在下载与安装编译环境之前,为了使软件包保持最新的状态,需要在命令行中键入命令sudo apt-get update
,从源服务器下载最新的软件包列表
sudo apt-get update
:更新apt的资源版本目录
为了正常编译MPI代码,需要安装C, C++
与Fortran
的编译环境。
Ubuntu缺省情况下,并没有提供这些语言的编译环境,因此需要手动安装。
如果单独安装这些编译环境非常麻烦。幸运的是,build-essential
工具提供了许多与编译相关的软件包,包括gcc/g++/gfortran
等编译器、libc6-dev
等必要的库与其他工具。于是,我们只需要通过包管理器安装build-essential即可。
apt-get
命令的 -y
选项默认安装过程中同意所有的默认选择。
sudo apt-get install -y build-essential
下载与安装完成后,可键入下面的命令观察gcc版本信息。
gcc -v