当前位置: 首页 > news >正文

HPL2.3安装

1.使用的是OPENBLAS

git clone https://github.com/xianyi/OpenBLAS.git
cd OpenBLAS
make
make PREFIX=$HOME/opt/OpenBLAS install

2.oneMPI安装

wget https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.4.tar.gz
tar xf openmpi-4.1.4.tar.gz
cd openmpi-4.1.4
./configure --prefix=$HOME/opt/OpenMPI  #安装路径
make -j 16
make instalexport MPI_HOME=$HOME/opt/OpenMPI
export PATH=$PATH:$MPI_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$MPI_HOME/lib

3.HPL安装

 wget https://netlib.org/benchmark/hpl/hpl-2.3.tar.gztar -xvf hpl-2.3.tarrm hpl-2.3.tarmv hpl-2.3 ~/hplcd hplcp setup/Make.Linux_PII_CBLAS ./Make.Linux

3.1修改配置文件

#
ARCH         = Linux
#
# ----------------------------------------------------------------------
# - HPL Directory Structure / HPL library ------------------------------
# ----------------------------------------------------------------------
#
TOPdir       = /hpl-2.3  #HPL包路径
INCdir       = $(TOPdir)/include
BINdir       = $(TOPdir)/bin/$(ARCH)
LIBdir       = $(TOPdir)/lib/$(ARCH)
#
HPLlib       = $(LIBdir)/libhpl.a
MPdir        = /opt/OpenMPI
MPinc        = -I$(MPdir)/include
#MPlib        = $(MPdir)/lib/libopenblas.a
MPlib        = -L$(MPdir)/lib -Wl,-rpath=$(MPdir)/lib
#
# ----------------------------------------------------------------------
# - Linear Algebra library (BLAS or VSIPL) -----------------------------
# ----------------------------------------------------------------------
# LAinc tells the  C  compiler where to find the Linear Algebra  library
# header files,  LAlib  is defined  to be the name of  the library to be
# used. The variable LAdir is only used for defining LAinc and LAlib.
#
LAdir        =/opt/OpenBLAS  #BLAS安装路径
LAinc        =
LAlib        = $(LAdir)/libopenblas.a
#
HPL_OPTS     = -DHPL_CALL_CBLAS
#
# ----------------------------------------------------------------------
#
HPL_DEFS     = $(F2CDEFS) $(HPL_OPTS) $(HPL_INCLUDES)
#
# ----------------------------------------------------------------------
# - Compilers / linkers - Optimization flags ---------------------------
# ----------------------------------------------------------------------
#
CC           = /opt/OpenMPI/bin/mpicc   #调用MPI环境使用MPICC
CCNOOPT      = $(HPL_DEFS)
CCFLAGS      = $(HPL_DEFS) -fomit-frame-pointer -O3 -funroll-loops
#
# On some platforms,  it is necessary  to use the Fortran linker to find
# the Fortran internals used in the BLAS library.
#
LINKER       = /opt/OpenMPI/bin/mpif77  ##调用MPI环境使用MPIf77
LINKFLAGS    = $(CCFLAGS)
#
ARCHIVER     = ar
ARFLAGS      = r
RANLIB       = echo

3.2编译

make arch=Linux

3.3编译是否成功,查看bin/Linux下是否有xhpl
在这里插入图片描述
3.4,进入到bin/Linux执行

mpirun -np 4 ./xhpl > HPL-Benchmark.txt
#如果提示--allow-run-as-root 执行
mpirun --allow-run-as-root -np 4 ./xhpl > HPL-Benchmark.txt

4.如果出现以下报错

[1]: Leaving directory '/test/hpl-2.3'
make -f Make.top build_src       arch=Linux_PII_CBLAS
make[1]: Entering directory '/test/hpl-2.3'
( cd src/auxil/Linux_PII_CBLAS;         make )
make[2]: Entering directory '/test/hpl-2.3/src/auxil/Linux_PII_CBLAS'
Makefile:47: Make.inc: No such file or directory
make[2]: *** No rule to make target 'Make.inc'.  Stop.
make[2]: Leaving directory '/test/hpl-2.3/src/auxil/Linux_PII_CBLAS'
make[1]: *** [Make.top:54: build_src] Error 2
make[1]: Leaving directory '/test/hpl-2.3'
make: *** [Makefile:72: build] Error 2

查看路径是否写对,HPL,OpenBLAS库和MPI,还有CC和LINKER。
大概率是CC和LINKER。

http://www.xdnf.cn/news/1462069.html

相关文章:

  • 期权卖方的收益和损失如何计算?
  • K8S删除命名空间卡住一直Terminating状态
  • 【小白笔记】命令不对系统:无法将‘head’项识别为 cmdlet、函数、脚本文件或可运行程序的名称
  • 【GEOS-Chem 输入数据】使用 AWS CLI 访问 GEOS-Chem 数据
  • LangChain实战(十六):构建基于SQL数据库的数据分析Agent
  • 深度学习——残差神经网路
  • 鸿蒙NEXT自定义能力详解:从基础使用到高级技巧
  • IDE mac M芯片安装报错:如何解决“InsCode.app 已损坏”,无法打开
  • 从零开始:用uv构建并发布一个Python CLI应用,集成CI/CD自动化发布与Docker容器化部署
  • 码农的“必修课”:深度解析Rust的所有权系统(与C++内存模型对比)
  • PCDN双系统赋能企业
  • LeetCode 2749.得到整数零需要执行的最少操作数:很独特的一道数学题(多公式硬讲——一步步还真能看懂)
  • 计算机网络7 第七章 网络安全
  • Graphpad 绘图(二):小鼠生存曲线绘制与数据记录分析详解
  • Windows 部署 Gerrit 与 Apache24 配置
  • 【传奇开心果系列】Flet框架实现的搜索引擎搜索关键词建议提示和自动完成自定义组件模板特色和实现原理深度解析
  • 无人机小目标检测新SOTA:MASF-YOLO重磅开源,多模块协同助力精度飞跃
  • [特殊字符] 香蕉超市|Nano Bananary|ZHO|已开源
  • 大数据毕业设计选题推荐-基于大数据的分化型甲状腺癌复发数据可视化分析系统-Spark-Hadoop-Bigdata
  • 85 printk 输出丢失数据
  • 分布式专题——1.1 Redis单机、主从、哨兵、集群部署
  • 解决 Apache/WAF SSL 证书链不完整导致的 PKIX path building failed 问题
  • 还在为第三方包 bug 头疼?patch-package 让你轻松打补丁!
  • 时间轮算法在workerman心跳检测中的实战应用
  • leecode kadane算法 解决数组中子数组的最大和,以及环形数组连续子数组的最大和问题
  • Doirs Routine Load
  • PHP:驱动现代Web应用发展的核心力量
  • 【AI产品思路】AI 原型设计工具横评:产品经理视角下的 v0、Bolt 与 Lovable
  • 如何在 C# 中将文本转换为 Word 以及将 Word 转换为文本
  • Python 实现 Markdown 与 Word 高保真互转(含批量转换)