Linpack计算力集群测试

来源:互联网 发布:windows端口初始化失败 编辑:程序博客网 时间:2024/05/17 13:05

鉴于做《分布并行计算机技术》的作业,对着其他网上教程作了半天,发现不少错误。于是自己总结一下

——————————————————————————————————————————————

平台:一台实验室电脑+四台刀片机 ubuntu 12.04 64bit

ubuntu 192.168.19.123(控制节点)

Blade01 192.168.19.11

lab 192.168.19.12

node1 192.168.19.13

whu-control 192.168.19.14


准备好要安装的源码包

mpich2-1.0.tar.gz

blas.tgz

cblas.tgz

hpl-2.1.tar.gz


安装mpich2

并行环境MPI的建立,创建ssh信任连接(root用户)

ubuntu(控制节点)下:

#vim /etc/hosts

127.0.0.1       localhost
192.168.19.123  ubuntu.ubuntu   ubuntu
192.168.19.123  scc-m
192.168.19.11   Blade01
192.168.19.12   lab
192.168.19.13   node1
192.168.19.14   whu-control

#ssh-keygen -t rsa

#cd /root/.ssh

#cp id_rsa.pub authorized_keys

控制节点完成


所有计算节点下:

#ssh-keygen -t rsa

#scp ubuntu:/root/.ssh/* /root/.ssh/

#scp ubuntu:/etc/hosts /etc/hosts

计算节点完成


准备工作差最后一步:确认全部节点(包括控制节点和计算节点)之间的信任连接

只需要对每个节点执行:

#ssh ubuntu

#ssh Blade01

#ssh lab

#ssh node1

#ssh whu-control

在提示处输入yes回车,最后确定无需输入密码并且没有任何提示信息即可登陆


准备工作完毕

开始源码安装MPICH2(所有节点)

#tar -zxvf mpich2-1.0.tar.gz

#cd mpich2-1.0

#mkdir /usr/MPICH-install

#./configure --prefix=/usr/MPICH-install

#make && make install

#vim /root/,bashrc (最后一行添加PATH="$PATH:/usr/MPICH-install/bin")

#source /root/.bashrc

#vim /root/mpd.hosts

ubuntu
Blade01
lab
node1
whu-control

安装完毕

测试:

#which mpd

#which mpicc

#which mpiexec

#which mpirun

若都输出/usr/MPICH-install/bin/xxxx 则安装成功


所有节点上都安装完成之后

在控制节点上

#mpdboot -n 5 -f mpd.hosts

#mpdtrace

顺利的话可以看到全部5个节点


安装BLAS

#mkdir /root/linpack

#cd /root/linpack

#tar zvxf blas.tgz

#cd BLAS

#make

#cd ..

#tar zvxf cblas.tgz

#cd CBLAS

#cp Makefile.LINUX Makefile.in

#vim Makefile.in

修改以下三项

BLLIB = /root/linpack/BLAS/blas_LINUX.a
CBDIR = /root/linpack/CBLAS

FC = mpif77

#make all

安装完成

顺利的话生成blas_LINUX.a cblas_LINUX.a这两个库文件


安装hpl

cd /root/linpack

tar zvxf hpl-2.1.tar.gz

mv hpl-2.1 hpl

cd hpl/setup

cp Make.Linux_PII_CBLAS ../

cd ..

vim Make.Linux_PII_CBLAS

TOPdir       = /root/linpack/hpl

MPdir        = /usr/MPICH-install

LAdir        = /root/linpack/BLAS
LAinc        =
LAlib        = /root/linpack/CBLAS/lib/LINUX/cblas_LINUX.a /root/linpack/BLAS/blas_LINUX.a

CC           = mpicc

CCFLAGS      = $(HPL_DEFS) -fomit-frame-pointer -O3 -funroll-loops -lpthread

LINKER       = gfortran

make arch=Linux_PII_CBLAS

如果编译正常,在hpl/bin/Linux_PII_CBLAS目录下就会生成两个文件HPL.dat和xhpl。 HPL.dat文件是Linpack测试的优化配置文件,这个对测试的结果十分重要,xhpl为可执行程序。

如果是集群测试,就将linpack目录复制到机群中其余节点相同的目录下。

至此,安装就算完成了。现在可以进行简单的测试.


测试

配置HPL.dat

#cd /root//linpack/hpl/bin/Linux_PII_CBLAS

#vim HPL.dat

HPLinpack benchmark input fileInnovative Computing Laboratory, University of TennesseeHPL.out      output file name (if any)8            device out (6=stdout,7=stderr,file)1            # of problems sizes (N)20000        Ns1            # of NBs192          NBs0            PMAP process mapping (0=Row-,1=Column-major)1            # of process grids (P x Q)4            Ps8            Qs16.0         threshold1            # of panel fact1            PFACTs (0=left, 1=Crout, 2=Right)2            # of recursive stopping criterium4 8          NBMINs (>= 1)1            # of panels in recursion2            NDIVs1            # of recursive panel fact.2            RFACTs (0=left, 1=Crout, 2=Right)2            # of broadcast1 3          BCASTs (0=1rg,1=1rM,2=2rg,3=2rM,4=Lng,5=LnM)2            # of lookahead depth0 1          DEPTHs (>=0)2            SWAP (0=bin-exch,1=long,2=mix)60           swapping threshold0            L1 in (0=transposed,1=no-transposed) form0            U  in (0=transposed,1=no-transposed) form1            Equilibration (0=no,1=yes)8            memory alignment in double (> 0)

#mpirun -np 32 ./xhpl


0 0
原创粉丝点击