Run linpack in server

1.Get computer nodal information

lscpu

 dmidecode -t memory | head -45 | tail -24

2.Experimental softwares:mpich-3.2.1 + GotoBLAS2-1.13 + hpl-2.2

3.Install software

1.Install mpich

1.Solve dependency

  sudo yum install gcc
sudo yum install gcc-gfortran

2.Download mpich3

  cd /home
yum install wget
wget http://www.mpich.org/static/downloads/3.2.1/mpich-3.2.1.tar.gz

3.Installing

  mkdir /home/linpack
tar -zxvf mpich-3.2.1.tar.gz
mv mpich-3.2.1 /home/linpack
mkdir /home/mpich-install
cd /home/linpack/mpich-3.2.1
./configure --prefix=/home/mpich-install 2>&1 | tee c.txt

when run --- ./configure --prefix=/home/mpich-install/ 2>&1 | tee c.txt




error:configure: error: Aborting because C++ compiler does not work.


If you do not need a C++ compiler, configure with --disable-cxx


solve:yum install gcc-c++

  ./configure --prefix=/home/mpich-install 2>&1 | tee c.txt
make 2>&1 | tee m.txt
make install 2>&1 | tee m.txt
PATH=/home/[USERNAME]/mpich-install/bin:$PATH ; export PATH
which mpicc
which mpiexec

4.test if install success

  cd /home/linpack/mpich-3.2.1/examples
mpiexec -n 5 ./cpi

when run --- mpiexec -n 5 ./cpi


error:Fatal error in MPI_Init: Other MPI error, error stack: gethostbyname failed, cu001.novalocal (errno 1)


solve:vim /etc/hosts


add "127.0.0.1 cu001.novalocal" to /etc/hosts

 mpiexec -n 5 ./cpi

2.Install GotoBLAS2

1.Download GotoBLAS2-1.13

cd /home
wget https://www.tacc.utexas.edu/documents/1084364/1087496/GotoBLAS2-1.13.tar.gz/b58aeb8c-9d8d-4ec2-b5f1-5a5843b4d47b
mv b58aeb8c-9d8d-4ec2-b5f1-5a5843b4d47b GotoBLAS2-1.13.tar.gz
tar -zxvf GotoBLAS2-1.13.tar.gz
mv GotoBLAS2 /home/linpack
cd /home/linpack/GotoBLAS2

error:In GotoBLAS2 directory, f_check file'source have error.


solve:Change 298th row of f_check file to "print MAKEFILE "FEXTRALIB=$linker_L -lgfortran -lm -lquadmath -lm $linker_a\n";"

make BINARY=64 TARGET=NEHALEM

when run --- make BINARY=64 TARGET=NEHALEM

error:/bin/sh:行2: patch: 未找到命令

make: *** [lapack-3.1.1] 错误 127o

solve: yum install patch

 make BINARY=64 TARGET=NEHALEM

3.Install hpl

1.download hpl

cd /home/
wget http://www.netlib.org/benchmark/hpl/hpl-2.2.tar.gz
tar -zxvf hpl-2.2.tar.gz
mv hpl-2.2 /home/linpack
cd /home/linpack/hpl-2.2
cp ./setup/Make.Linux_PII_FBLAS ./
vim Make.Linux_PII_FBLAS

modify Make.Linux_PII_FBLAS file

  TOPdir       = /home/linpack/hpl-2.2 ##where is hpl-2.2
MPdir = /home/mpich-install ##where is mpich installed directory
MPlib = $(MPdir)/lib/libmpi.so
LAdir = /home/linpack/GotoBLAS2 ##where is GotoBLAS2
LAlib = $(LAdir)/libgoto2.a $(LAdir)/libgoto2.so
CC = /home/mpich-install/bin/mpicc ##where is mpicc
LINKER = /home/mpich-install/bin/mpif77 ##where is mpif77

when run ---make arch=Linux_PII_FBLAS

error:6.//usr/lib64/libpthread.so.0: error adding symbols: DSO missing from comman

solve:modify Make.Linux_PII_FBLAS

CCFLAGS = $(HPL_DEFS) -fomit-frame-pointer -O3 -funroll-loops -W -Wall -fuse-ld=gold -pthread -lm

  make  arch=Linux_PII_FBLAS

4.Runing

cd  /home/linpack/hpl-2.2/bin/Linux_PII_FBLAS/
mpiexec -np 4 ./xhpl > /home/test1

5.Result

linpack_2的更多相关文章

随机推荐

  1. C++ Knowledge series 4

    Programming language evolves always along with Compiler's evolvement The Semantics of Function C++ s ...

  2. JavaScript基础:比较运算符——==与 ===;!=与!==

    var x=10, y="10", m=15 x==y;//返回true x===y;//返回false x!=y;//返回false x!==y;//返回true//同理cons ...

  3. java集合框架——Map

    一.概述 1.Map是一种接口,在JAVA集合框架中是以一种非常重要的集合.2.Map一次添加一对元素,所以又称为“双列集合”(Collection一次添加一个元素,所以又称为“单列集合”)3.Map ...

  4. Radix Sort

    为了完成二维数据快速分类,最先使用的是hash分类. 前几天我突然想,既然基数排序的时间复杂度也不高,而且可能比hash分类更稳定,所以不妨试一下. 在实现上我依次实现: 1.一维数组基数排序 基本解 ...

  5. POJ-1509 Glass Beads---最小表示法模板

    题目链接: https://vjudge.net/problem/POJ-1509 题目大意: 给你一个循环串,然后找到一个位置,使得从这个位置开始的整个串字典序最小. 解题思路: 最小表示法模板 注 ...

  6. eclipse 插件relo使用

    1. eclipse插件安装 在线安装地址:http://relo.csail.mit.edu/update 本地配置,文件下载:http://download.csdn.net/download/s ...

  7. js 图片库 改进版

    平稳退化 js与html标记分离? 如果有两个函数:firstFunction和secondFunction,如果想让它们俩都在页面加载时得到执行,可以调用函数addLoadEvent,只有一个参数, ...

  8. element-UI动态的循环生成Popover弹出框的方法

    父组件:<div class="itemLi" :class="{gray: (salse.flashsaleStatus==3 || salse.flashsal ...

  9. 关于js的严格模式

    最近在看你不知道js,补充自己的js基础,加深理解.在读的过程中写点笔记. 严格模式下与非严格模式的区别 . 严格模式是es5新增的,es6是默认为严格模式的!js默认状态下是非严格模式的!   一般 ...

  10. WebSeal单点登陆

    WebSeal单点登陆 作为学习整理,部分内容来自网络和官方文档. LDAP LDAP可以看作一种数据库,分为客户端和服务端.服务端是用来存放资源,客户端用来操作资源.它是一种树形存储结构,遍历起来会 ...