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

编译安装调试 scaLapack 和 openmpi 以及 lapack


编译安装调试 scaLapack

/home/hipper/ex_scalapack/
mkdir ./lapack
mkdir -p ./lapack/local/lib
mkdir ./openmpi
mkdir ./scalapack


1,编译安装 Lapack

下载代码:

cd lapack
wget https://github.com/Reference-LAPACK/lapack/archive/refs/tags/v3.12.0.tar.gz
tar zxf v3.12.0.tar.gz

编译lapack:

cd lapack-3.12.0/
cp make.inc.example make.inc
make -j

ls ./

安装 lapack:

cd ..
cp lapack-3.12.0/lib*.a ./local/lib/

设置scalapack编译时需要的环境变量:

libLapackPath=/home/hipper/ex_scalapack/lapack/local/lib/liblapack.a
libRefBlasPath=/home/hipper/ex_scalapack/lapack/local/lib/librefblas.a

2, 编译安装 openmpi

下载代码:
 

cd openmpi/
wget https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.6.tar.gz


配置编译:
 

./configure  --prefix=/home/hipper/ex_scalapack/openmpi/local --with-cuda  2>&1 | tee config.out

make -j
make install

./configure --help

可以查看配置选项,

比如编译 libopenmpi_cxx.so:

./configure  \
--prefix=/home/hipper/ex_openmpi/local \
--enable-mpi-cxx  \
--enable-mpi-fortran \
--with-cuda  2>&1 | tee config.out

设置环境变量:

export PATH=$PATH:/home/hipper/ex_scalapack/openmpi/local/bin
export LD_LIBRARY_PATH=/home/hipper/ex_scalapack/openmpi/local/lib:$LD_LIBRARY_PATH

ls ../local/bin

3,编译安装 sacLapack

下载代码:
 

cd scalapack/
git clone https://github.com/Reference-ScaLAPACK/scalapack.git
或者:
wget https://github.com/Reference-ScaLAPACK/scalapack/archive/refs/tags/v2.2.0.tar.gz
tar zxf v2.2.0.tar.gz

配置编译
 

mkdir build/
cd build/
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DCMAKE_CXX_COMPILER=mpicxx \
-DCMAKE_C_COMPILER=mpicc \
-DCMAKE_Fortran_COMPILER=mpifort \
-DLAPACK_LIBRARIES=$libLapackPath \
-DBLAS_LIBRARIES=$libRefBlasPath \
../scalapack

make -j

ls ./lib/

4. 单机简单测试

ls ./TESTING/

./xdqr

参考:

https://support.huawei.com/enterprise/zh/doc/EDOC1100283144/17286012


https://docs.nvidia.com/nvpl/_static/scalapack/getting-started.html



https://github.com/amd/aocl-scalapack


http://www.kler.cn/a/297074.html

相关文章:

  • 干货分享:2024四大录音转文字工具推荐!
  • 构建Web3社交平台:DeBox式DApp开发全攻略
  • docker-mysql容器数据卷挂载
  • Qt_环境搭建
  • Benchmark.NET:让 C# 测试程序性能变得既酷又简单
  • 南卡、韶音、墨觉:精选三款旗舰骨传导耳机全面对比评测!
  • Qt篇——Qt在msvc编译下提示“C2001:常量中有换行符“的错误
  • ORCAD出BOM--位号在同一个Excel格子里
  • Golang的panic和recover
  • 哈希表,算法
  • 软件工程知识点总结(3):需求分析(二)——分析模型建模
  • 无人机之动力系统篇
  • Python Flask_APScheduler定时任务的正确(最佳)使用
  • RuoYi-Vue若依框架-系统监控内定时任务的使用
  • 深圳市2025年重大项目计划开放申报,9月23日申报截止
  • 以实时,见未来——DolphinDB 2024 年度峰会圆满举办
  • linux定时监听ssh服务是否启动-------麒麟操作系统永久关闭swap
  • 【springsecurity】使用PasswordEncoder加密用户密码
  • llvm后端之函数栈帧的创建与销毁
  • 线性代数 第七讲 二次型_标准型_规范型_坐标变换_合同_正定二次型详细讲解_重难点题型总结