写这个脚本是为了方便女朋友安装。
本人水平有限,如有疏漏还请指出。
这个文档提供了一个脚本,可以帮助你很轻松地安装 2020 年第一学期贺红老师的 18 级高性能计算课程开始所需要的HPL
和HPCC
两个 benchmark 工具,请按照如下步骤进行,除此之外不需要下载任何BLAS等其他软件包:
写了一个编写过程和原理解释,有兴趣的同学可以看一下,一起交流^ ^
2023年3月13日更新:
更新脚本下载链接
3年过去了,SDUWH也发生了翻天覆地的变化,故该脚本可能已无法适应当前的集群环境。劳请诸君自行测试,如无法使用,可参考本脚本及本人在CSDN上的原理讲解进行修改。祝大家玩得开心!
2022年3月2日更新:
停止使用FTP协议,改为使用HTTP协议传输。
【重要】2020年3月14日 18:40更新:
之前由于个人疏忽,没仔细看账号主目录下的.bashrc
文件,因此造成断开再登录时测试报错,提示"Error While Loading Shared Libraries: libiomp5.so"
,解决方法如下:
- 如果之前未安装,新的脚本已经更新,无需操作。
- 如果之前使用脚本安装过:
- 临时方案:每次登录时,执行(在哪个目录执行无所谓)
# 取出/home/train/.bashrc中的命令并执行 source ~/../bashrc
优点 | 不改变shell登录时的配置文件 |
---|---|
缺点 | 只在一次登录中有效,断开连接(注销)后即失效 |
- 永久方案:登录,进入到
自己学号的目录
,执行# 用/home/train/.bashrc覆盖用户主目录下的.bashrc cp ~/../bashrc ~/.bashrc
下次再登录的时候就不会出现问题了。
优点 | 一次修改,永久生效(当然也可以再改回去) |
---|---|
缺点 | 其实没啥缺点 |
2020年3月14日 11:40更新:部分账号下由于之前安装更改了环境变量导致错误。加上了修复MKL
等环境变量的语句。
1. 准备工作
- 登录学校 VPN,并使用 Xshell 等 ssh 连接软件连接到学校超算节点
- 确认你已经创建了你自己的目录,并进入你的目录,请执行:
cd 201800XXXXXX
结果如下图所示,注意$
符号前出现了你的学号
2. 下载脚本并使用
- 请务必确认你现在处于你自己的目录(以你学号命名的目录)下,执行
wget --no-check-certificate http://duchenhe.xyz/paperbox/install-onekey.sh
# 获取执行权限并执行
chmod +x install-onekey.sh
./install-onekey.sh
- 按照提示输入 y,脚本自动完成下载、解压、编译等任务
耐心等候一小会,坐和放宽,最后结果如下图,不出现 error 提示就对
更细致地说,满足以下条件,代表程序编译成功:
目录
201800xxxxxx/hpl-2.3/bin/sduwhhpl
下,有HPL.dat
和xhpl
两个文件,表示HPL
编译成功
目录201800xxxxxx/hpcc-1.5.0
下,有hpcc
文件,表示HPCC
编译成功
3. 测试
具体测试目录见上面
测试 HPL
#在 HPL.dat 文件所在目录(详细目录见上面)下执行 xhpl 程序
mpirun -np 4 ./xhpl # 4个CPU并行
测试 HPCC
#在hpcc所在目录(详细目录见上面)执行下列操作
cp \_hpccinf.txt hpccinf.txt
mpirun -np 4 ./hpcc
# 运行结束后会在当前目录生成一个 hpccoutf.txt 的结果文件
以上就是全部的安装过程了,祝愿安装顺利。
4. 一些发现
HPL(High Performance Linpack),是用于并行计算的高性能计算测试软件。当前最新版本是2.3
。HPCC 本质上就是使用的HPL
,HPCC 1.5
之后就不再更新,HPCC 集成的是HPL 2.0
因此两者的编译文件非常相似。只需要修改一点地方。区别仅在于HPCC
不需要在配置中指定HPL
目录,因此那部分不填。
HPL 的编译配置文件,我是基于setup
目录里的Make.Linux_Intel64
修改,使用此模板的原因是学校集群使用的是 Xeon E5-2620 处理器。我们所在的 train 目录下已经写好了mkl
和mpi
的环境变量,因此不需要再下载blas
和mpi
软件包。