Abaqus内配置使用Intel MPI
环境:上海15资源池
当某些情况下Abaqus自带的IMPI无法使用时,需要将Abaqus中的Intel MPI替换成外部其他的Intelmpi版本,并对其合理配置。
首先修改abaqus_v6.env文件,该文件是abaqus任务的资源模板,启动命令是在abaqus_v6.env中规定的资源进行申请。
$ vi /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/SMA/site/abaqus_v6.env
增加以下配置
mp_mpi_implementation=IMPI
实际路径根据个人安装位置进行修改。
替换Abaqus内的Intel MPI
使用外部intel mpi,替换abaqus自带的intelmpi,并对其进行配置:
$ mv /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/bin /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/bin.bak
$ mv /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/libfabric /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/libfabric.bak
$ cp -r /opt/PKG/intel2021/opt/intel/oneapi/mpi/2021.6.0/bin/ /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/
$ cp /opt/PKG/intel2021/opt/intel/oneapi/mpi/2021.6.0/env/vars.sh /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/bin/mpivars.sh
此处Intel MPI的原始位置,根据已有的安装目录进行修改,一般的路径类似于xxx/intel/oneapi/mpi/2021.6.0/
$ chmod +x /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/bin/mpivars.sh
$ cp -r cp -r /opt/PKG/intel2021/opt/intel/oneapi/mpi/2021.6.0/libfabric /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/
以上路径需根据自己的安装路径进行对应修改。
测试验证
$ source /opt/Abaqus2022/abaqus2022/SIMULIA/EstProducts/2022/linux_a64/code/bin/SMAExternal/impi/intel64/bin/mpivars.sh
$ fi_info
provider: mlx
fabric: mlx
domain: mlx
version: 1.4
type: FI_EP_UNSPEC
protocol: FI_PROTO_MLX
provider: psm3
fabric: IB/OPA-0xfe80000000000000
domain: mlx5_4
version: 1102.0
type: FI_EP_RDM
protocol: FI_PROTO_PSMX3
provider: psm3
fabric: IB/OPA-0xfe80000000000000
domain: mlx5_4
version: 1102.0
type: FI_EP_RDM
protocol: FI_PROTO_PSMX3
provider: psm3
fabric: IB/OPA-0xfe80000000000000
domain: mlx5_4
version: 1102.0
type: FI_EP_RDM
protocol: FI_PROTO_PSMX3
provider: mlx;ofi_rxm
fabric: mlx
domain: mlx
version: 113.20
type: FI_EP_RDM
protocol: FI_PROTO_RXM
provider: verbs;ofi_rxm
fabric: IB-0xfe80000000000000
domain: mlx5_4
version: 113.20
type: FI_EP_RDM
protocol: FI_PROTO_RXM
...
这里fi_info的返回第一行,必须是provider: mlx;且verbs第一行的返回,domain: mlx5_4。若第一行不是mlx,或是第一行是verbs,但是 domain: mlx5_bond_0, domain不是mlx5_4,则无法使用上海15的ib网络。