求助如何在HPC Cluster上安装OF5.0



  • 请教大家,我现在想在HPC cluster上安装Openfoam 5.0, 目前服务器上已经装有该版本,但是因为我要更改湍流模型,所以需要在当地的用户文件内重新安装该版本。Cluster上已经安装了module Gcc和MPI.

    我在网上找到一些教程,不过都是2.x版本,所以可能不完全适用。 下面是主要的几个步骤,我在这里贴出来方便与OF5.0对比

    cp /cineca/prod/applications/openfoam/2.3.0-gnu-4.7.2/openmpi–1.6.3–gnu–4.7.2/OF_2.3.0_LOCAL_INSTALL_CINECA_PLX.tar .
    tar -xf OF_2.3.0_LOCAL_INSTALL_CINECA_PLX.tar
    rm OF_2.3.0_LOCAL_INSTALL_CINECA_PLX.tar
    cd OF_2.3.0_LOCAL_INSTALL_CINECA_PLX
    ls
    OF_2.3.0_LOCAL_INSTALL_CINECA_PLX.sh PATCHES (新版本里并没有该配置文件,只有bashrc)

    1. Execute the script to download, configure and install your local version of OpenFOAM:
      ./OF_2.3.0_LOCAL_INSTALL_CINECA_PLX.sh
      The installation dir, in this case, is located in your $HOME space
      FOAM_INST_DIR=$HOME/OpenFOAM
      The OpenFOAM environment of the local installation is set in
      $HOME/OpenFOAM/OpenFOAM-2.3.x/etc/bashrc
    2. Load the environment of your local installation
      module load gnu/4.7.2
      module load openmpi/1.6.3–gnu–4.7.2
      source $HOME/OpenFOAM/OpenFOAM-2.3.x/etc/bashrc
      and you will have
      $WM_PROJECT_VERSION=2.3.x
      $FOAM_INST_DIR=/plx/userinternal/ispisso0/OpenFOAM
      $WM_PROJECT_USER_DIR=/plx/userinternal/ispisso0/OpenFOAM/ispisso0-2.3.x

    下面是我在cluster里找到的tar文件,该文件在OF的安装目录里:
    5-0.tar.gz backup2.zig backup.zip bashrc OpenFOAM-5.0 (已编译好程序)
    我主要有下面几点问题:
    1) 这个tar.gz文件包我是否可以直接用它在我的用户文件夹里安装编译?
    2)它有一个独立的bashrc文件,这个是否可以直接用来当配置文件?我看了一下里面发现他的WM_COMPILER=Icc,并不是Gcc
    3)我是否可以按照上面的OF2.X编译步骤进行?还是有其他的步骤需要我考虑的?

    谢谢大家!!!最近被这个安装搞得焦头烂额的,希望能有人给我些建议~~~


  • 网格教授 OpenFOAM教授 管理员

    HPC Cluster上是什么linux?



  • @东岳 是的,linux系统



  • @sjlouie91 linux家族庞大,HPC部署的应该是CentOS RH某版本吧?查一下具体版本


  • OpenFOAM讲师

    1. 最好是让管理员装。
    2. 如果比较新的Linux,有singular或者类似的docker容器技术,可以直接把镜像弄上去就能用。
    3. 如果没有,可以用HPC包管理器,自动安装和解决依赖,比如spack 或者easy build。一个是美国货,一个欧洲货,建议采用美国货。如果能联网,这是最快最方便的。
    4. 如果不能联网, 可以打包导入再安装。
    5. 如果性能要求比较高,最好选用推荐的MPI实现和编译器。
    6. 自己编译的话,不同版本有差异,不一定通用的。


  • (1)应该可以在自己的用户文件夹中进行编译,etc/bashrc里面的安装路径最好改一下,免得和原来的冲突;
    (2)icc也可以成功编译openfoam,之前用gcc编译openfoam3.0的时候,gcc编译openfoam的源码编译不成功(可能是gcc版本太低吧),就用icc替代了gcc;
    (3)感觉主要注意一下环境变量的配置。