HPL测试的配置(依赖于BLAS),通过OpenMpi进行实现

Posted $mathcal{Vocanda}$

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HPL测试的配置(依赖于BLAS),通过OpenMpi进行实现相关的知识,希望对你有一定的参考价值。

1.1 虚拟机的配置

1.1.1 Linux 光盘映像文件

由于对于Ubuntu系统更为熟悉,所以选择了最新版的Ubuntu系统作为Linux发行版。

1.1.2 Hypervisor

由于之前一直使用VMware,对其中操作熟悉,因此选择VMware作为Hypervisor

1.2 搭建集群并安装相关程序

1.2.1 创建虚拟机







以上为虚拟机配置过程,安装成功后进入Ubuntu界面

1.2.2 下载并安装OpenMPI


下载好压缩包后,进行解压,进入openmpi文件夹,配置安装路径,后使用

make
sudo make install

进行编译安装

· 更改 PATH 和 LD_LIBRARY_PATH


在~/.bashrc中最开头加入指令

PATH=$PATH:/usr/local/openmpi/bin
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openmpi/lib/
export PATH LD_LIBRARY_PATH

进行环境变量的配置

1.2.3 下载并安装HPL

· BLAS

· 首先检查并安装gfortran、gcc

sudo apt-get install gfortran
sudo apt-get install gcc
gfortran -v
gcc -v

· 编译BLAS和CBLAS

解压blas压缩包后,编译其中文件,生成blas_LINUX.a静态头文件包
将其复制到解压后的CBLAS文件夹中,编译CBLAS文件,得到cblas_LINUX.a
将两个文件包拷贝到/usr/local/lib/目录下,作为目录路径。

· 安装HPL

解压压缩包后,从 setup/ 文件夹中拷贝 Make.Linux_PII_CBLAS 架构的 Make 文件到根目录
修改Make文件中参数

# Make.Linux_PII_CBLAS
# arch
ARCH = Linux_PII_CBLAS
...
# MPI
MPdir = /usr/local/openmpi/
MPinc = -I$(MPdir)/include
MPlib = -L$(MPdir)/lib
# BLAS
LAdir = /home/BLAS-3.11.0
LAinc =
LAlib = $(LAdir)/lib
...
# compiler
CC = /usr/local/openmpi/bin/mpicc
LINKER = $(CC)

将Make.top 中的 arch 改为 Linux_PII_CBLAS,运行 make arch=Linux_PII_CBLAS
在testing文件夹中得到了xhpl运行文件

1.2.4 克隆节点

使用虚拟机中克隆,克隆完整虚拟机

1.3 测试集群

1.3.1 ping

在主机上,全部节点都可以ping通

1.3.2 配置SSH

主机中运行ssh-keygen得到公钥
将所有虚拟机设置为可以远程操控,并且安装客户端与服务端,openssh-client 和 openssh-server
使用ssh-copy-id ip 将公钥拷贝到其他子虚拟机.ssh/authorized_keys中,并且测试ssh能否连通

1.3.3 配置hostfile并测试

编写hostfile

运行

mpirun -hostfile hosts uptime
mpirun -hostfile hosts ./xhpl #该指令在hpl文件夹中运行



HPL测试完成!

ASC19超算概述

初赛题目组成

  1. 设计超算集群(看参考文献做设计)
  2. 对超算集群进行性能测试(一般来讲的测试工具就是用HPL,找到最适合的参数,达到最优秀的计算能力)
  3. 数字图像处理(通常代码量较大,代码优化较为困难,优化偏重于编译参数,运行参数和数学库BLAS的重新链接,对于热点可以考虑并行(读写)算法)
  4. 气候预测(这个需要做的就是优化代码,目的是提高计算速度和节省程序占用的内存空间)

压缩包内部一般都有README,可以参考该文件说明进行安装和配置。

1、设计超算集群

  • 参考网页最底部的范例 [PDF格式]
  • 查看本机硬件信息:hardinfo [Ref],进入图形界面后点击Generate Report

2、性能测试

3、数字图像处理

  • GAN

4、CESM

参考文献

  1. 超算集群系统的组成:针对问题一
  2. 如何获取超算平台?:针对问题一
  3. News of ASC19
  4. 超算比赛经验
  5. ASC18世界大学生超算竞赛题目分析以及思路总结

以上是关于HPL测试的配置(依赖于BLAS),通过OpenMpi进行实现的主要内容,如果未能解决你的问题,请参考以下文章

ASC19超算概述

Spark ALS应用BLAS加速

Spark ALS应用BLAS加速

将具有外部依赖项的共享库集成到 MATLAB |即犰狳、LAPACK、BLAS

安装HPL+GotoBLAS2+Openmpi

openm之ApriTag-3D定位