CPU的HPL基准測試


一、HPL介紹

高性能計算--HPC(High performance computing), 通常指使用很多處理器或集群中的幾台計算機的系統。高性能集群上運行的程序一般使用並行算法,把一個大的問題根據一定的規則切分為許多小的子問題,在集群中的不同節點上進行計算,而這些小問題的處理結果,經過處理可合並為原問題的最終結果。由於這些小問題的計算是並行完成的,所以可以縮短問題的處理時間。

HPL(High Performance Linpack)是並行計算集群的測試工具,通過調整測試文件中的矩陣大小、CPU數量等測試參數,執行HPL測試程序來獲取機器的最佳性能,衡量結果是浮點運算/秒(Flops),可以並行對單個處理器或分布式處理器進行基准測試。

編譯HPL需要兩個庫,一個是MPI 庫,另一個是BLAS(Basic Linear Algebra Subprograms)或VSIPL(Vector Signal Image Processing Library),可以從HPL 主頁相關鏈接下載后編譯。

基於GPU的基准測試 

 

二、HPL安裝

1、安裝編譯器(GCC和GFortran)

# yum install -y gcc gcc-c++ gcc-gfortran glibc glibc-devel make

 

2、安裝MPI

# yum install -y mpich-3.2-devel mpich-3.2

 

3、安裝OpenBLAS (向量和矩陣運算庫函數)

# wget https://github.com/xianyi/OpenBLAS/archive/v0.3.9.tar.gz -O OpenBLAS-0.3.9.tgz
# tar zxvf OpenBLAS-0.3.9.tar.gz # cd OpenBLAS-0.3.9 # make CC=gcc FC=gfortran # make PREFIX=/usr/local/openblas install

 

4、下載並解壓HPL

# wget https://www.netlib.org/benchmark/hpl/hpl-2.3.tar.gz
# tar -xzvf hpl-2.3.tar.gz # cd hpl-2.3 # cp setup/Make.Linux_PII_CBLAS ./

 

5、編輯Make.Linux_PII_CBLAS文件

# vim Make.Linux_PII_CBLAS
SHELL = /bin/sh
CD = cd
CP = cp
LN_S = ln -s
MKDIR = mkdir
RM = /bin/rm -f
TOUCH = touch
ARCH = Linux_PII_CBLAS
TOPdir = /usr/local/hpl-2.3
INCdir = $(TOPdir)/include
BINdir = $(TOPdir)/bin/$(ARCH)
LIBdir = $(TOPdir)/lib/$(ARCH)
HPLlib = $(LIBdir)/libhpl.a 
MPdir = /usr/lib64/mpich-3.2
MPinc = -I$(MPdir)/include
MPlib = $(MPdir)/lib/libmpi.so
LAdir = /usr/local/openblas
LAinc =
LAlib = $(LAdir)/lib/libopenblas.a
F2CDEFS =
HPL_INCLUDES = -I$(INCdir) -I$(INCdir)/$(ARCH) $(LAinc) $(MPinc) -lpthread
HPL_LIBS = $(HPLlib) $(LAlib) $(MPlib) -lpthread
HPL_OPTS = -DHPL_CALL_CBLAS
HPL_DEFS = $(F2CDEFS) $(HPL_OPTS) $(HPL_INCLUDES)
CC = /usr/lib64/mpich-3.2/bin/mpicc
CCNOOPT = $(HPL_DEFS)
CCFLAGS = $(HPL_DEFS) -fomit-frame-pointer -O3 -funroll-loops
LINKER = /usr/lib64/mpich-3.2/bin/mpif77
LINKFLAGS = $(CCFLAGS)
ARCHIVER = ar
ARFLAGS = r
RANLIB = echo

 

6、編譯HPL

# make arch=Linux_PII_CBLAS

 

7、測試HPL

# cd ./hpl-2.3/bin/Linux_PII_CBLAS # /usr/lib64/mpich-3.2/bin/mpirun -np 4 ./xhpl > HPL-Benchmark.txt

 

HPL.dat文件參考如下
https://www.advancedclustering.com/act_kb/tune-hpl-dat-file
mpirun的np值要等於HPL.dat的(P x Q)值

多節點並行測試

# mpirun -np 8 --host node1,node2 ./xhpl > HPL-Benchmark.txt

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM