PETSc 的安装与配置
Portable, Extensible Toolkit Scientific Computations.
PETSc 的安装
首先跟着官网的下载教程走,
如果有连接 GitLab 的能力, 可以直接
clone
最新的版本, 即
1 | git clone -b release https://gitlab.com/petsc/petsc.git petsc |
如果没有条件, 可以直接下载压缩包并解压1
PTESc 的配置
配置
首先安装好 "C Compiler (gcc)", "Fortran", "make", "Python3",
然后进行阅读, 其他配置可以参考官网
以及命令行帮助 ./configure --help
.
通常我们需要两个版本 debug
(输出更多的报错信息) 与
opt
(不带 debug
的版本的, 性能更好)
首先编辑 ~/.bashrc
或 ~/.zshrc
:
1 | vim ~/.zshrc |
之后只需要更改 $PETSC_ARCH
的值即可切换不同的版本2.
- 如果本地已经有了 MPI 相关的程序, 如
OpenMPI
或MPICH
, 以及有 BLAS/LAPACK 程序, 那么直接在$PETSC_DIR
目录下运行
1 | ./configure |
即可. 运行后可以发现在 $PETSC_DIR
的目录下多了一个名为
$PETSC_ARCH
的文件夹, 这就是以默认配置生成库的文件夹.
然后跟随终端提示
1 | make PETSC_DIR=/some/dir PETSC_ARCH=arch-linux-c-debug all |
- 如果本地没有 MPI 可以选择添加选项
--download-mpich
(官网推荐) 或--download-openmpi
; 如果没有 BLAS/LAPACK, 则添加选项--download-fblaslapack
, 即
1 | # 啥都没有 |
然后跟着命令提示完整接下来的 check.
注意: 如果本地有 MPI, 并且没有使用
--with-mpi=0
, 则不需要添加 --with-cc/cxx/fc
这三个选项, MPI 会自动使用 mpicc
, mpicxx
,
mpif90
.
然后将 ~/.zshrc
或 ~/.bashrc
中的
$PETSC_ARCH
中的值修改为 opt
的版本, 并
source
, 随后进行配置, 其余的配置与上文完全一致, 只需要在
./configure
的选项中添加 --with-debugging=0
即可, 随后依然按照命令行提示完成接下来的配置.
最后, 可以在 ~/.zshrc
或 ~/.bashrc
文件中添加
1 | export C_INCLUDE_PATH=$PETSC_DIR/include:$PETSC_DIR/$PETSC_ARCH/include:$C_INCLUDE_PATH |
来将 PETSc 中的头文件路径添加到 include path 中.
更新
按照官网的说明, 更新了源码之后需要使用
1 | make lib |
来更新库文件.