PETSc安装避免可能踩的坑(intel CPU)
第一步 下载MPICH/Intel MPI Library
我的CPU是intel的,安装的是Intel MPI Library(还需要安装Intel MKL,按照intel官网教程安装即可)。实际上,我在安装MPICH的时候遇到了问题,在配置及使用make安装的过程中都没有报错,但是在实际使用mpirun运行多进程程序时报错“Authorization required, but no authorization protocol specified”,报错信息见下图。这是我的踩坑经历,希望看到这个帖子的不要踩坑。
注意,安装完成oneapi后,要使用shell脚本设置环境变量,可以把“source /your/path/intel/oneapi/setvars.sh” 添加到~/.bashrc文件的末行!!!
第二步 安装PETSc
- 下载 使用git直接把最新的PETSc安装包下载下来,这应该是最简单的方法了。
- 安装 安装PETSc最好的方式是按照PETSc官网的安装教程进行安装。尽量不要随便找个帖子就开始操作!!!有的帖子可能需要安装额外的库,比如parmetis,metis,lapack等,这里如果需要这些库,那就按照官网教程一步一步来。(我的配置指令(供参考): ./configure --prefix=/my/path/petsc4 --with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90 --with-blaslapack-dir=$MKLROOT --download-parmetis --download-metis)
- 可能出现的问题 如果第一次安装不成功,第二次安装前先执行make clean(或者重新下载PETSc),这样有可能可以解决很多问题。经过实测,这样做很有效,因为我安装MPICH的时候走以为成功了,结果在安装PETSc的时候还是报上面的错误。