VASP6.3.2版本安装教程及运行测试(续) -- 2024 intel OneAPI

本文详细介绍了2024年针对IntelOneAPI更新后的VASP6.3.2安装步骤,包括下载资源包、安装依赖、编译libintel64,以及常见错误的解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景介绍

本文章是关于2024年安装VASP6.3.2版本的小白向教程。
2023年 passsive关于VASP安装的教程受到了广泛关注与好评。然而由于Intel在2024年发布的OneAPI的内部某些指令发生变化,因此2024年后安装VASP步骤需要做出调整。为了避免我等小白闭坑,故写此文以记录之。

VASP & 2024 Intel OneAPI 安装步骤

安装下载基础资源包

  1. 参考VASP6.3.2版本安装教程 , 安装下载以下部分
  • 资源包下载
  • 安装资源包

安装依赖
安装 Base_Toolkit
安装 HPC_Kit

安装完成后进行测试,是否安装成功。
安装完成后可能会在/home /opt/下目录下会出现一个Intel文件夹,因此根据不同的出现地方,进入Intel/oneapi/, 以/opt/目录为例(下同)执行命令:

sudo -s
source /opt/intel/setvals
  1. 验证安装
which icx
which icpx
which ifort
which mpirun
echo $MKLROOT

当所有指令均返回地址时,则安装正确。

编译libintel64

2024 intel oneapi 的fftw3xf文件位置发生变化,
/opt/intel/oneapi/mkl/2024.0/share/mkl/interfaces/fftw3xf
or
~/你的ubuntu用户名称/intel/oneapi/mkl/2024.0/share/mkl/interfaces/fftw3xf
cd到该位置(以第一个为例),

cd /opt/intel/oneapi/mkl/2024.0/share/mkl/interfaces/fftw3xf
source /opt/oneapi/intel/setvals.sh
make libintel64

成功后,将出现下面的.a文件
在这里插入图片描述

安装VASP

如果是Win11,使用Wsl2安装的Ubuntu, 将windows电脑中下载的vasp.6.3.2.tgz文件直接拷贝到 \\wsl.localhost\Ubuntu-22.04\home\你的ubuntu用户名,cd 到存放压缩文件的目录下,打开终端执行解压命令:
tar -zxvf vasp.6.3.2.tgz
在解压后进入vasp6.3.2文件夹,打开终端执行:
cp arch/makefile.include.intel makefile.include
cd至vasp6.3.2文件夹下,然后修改该文件至intel oneapi 2024.0的相对应函数

vim makefile.include

键盘i 进入insert模式,然后修正下图部分

CC_LIB      = icx
CXX_PARS    = icpx

在这里插入图片描述
键盘 esc ,然后输入:wq,保存后退出。
编译vasp

source /opt/intel/oneapi/setvars.sh
make all
exit

大约耗时半小时(如果两分钟就安装完了,那就证明安装有问题)

VASP测试

  1. 下载测试包
    思想家公社的门口:量子化学·分子模拟·二次元 中拉到最下面,下载测试包。
  2. 解压测试安装包
    以放置到~/vasp_workfile为例,打开vasp_workfile(cd vasp_workfile)
tar -zxvf vasp_workfile
cd benchmark.Hg

解压后,会看到IN-short和IN-long,分别是一个耗时较短和一个耗时较长任务的INCAR文件。这里将IN-short改名为INCAR
mv IN-short INCAR
执行VASP命令运行测试
输入mpirun -np 2 vasp测试调用2个核心执行此任务,然后检查得到的OUTCAR看是否内容正常,没异常的话就说明完全装好了.
vasp6.3.2 运行测试结果 -- IN-long

常见错误

  1. mpirun notfound
    关于普通用户无法调用mpirun来运行VASP的问题
    问题原因:环境变量中未找到mpirun
    解决方案:
    确定mpirun所在的文件夹
    在这里插入图片描述

打开环境变量文件夹,
vim ~/.bashrc
最后一行添加 【i
EXPORT PATH=$PATH:$HOME/.local/bin:$HOME/bin:/opt/intel/oneapi/mpi/2021.11/bin
然后【esc】【:wq】保存更改
重新加载刷新.bashrc
source ~/.bashrc
2. libmkl_blacs_intelmpi_ilp64.so.2 未找到
该文件路径存在于/opt/intel/oneapi/mkl/2024.0/lib
操作方法同上,在bashrc文件中添加
export PATH=$PATH:/opt/intel/oneapi/2024.0/bin
3. vasp_std notfound
操作方法同上,在bashrc文件中添加
在这里插入图片描述
export PATH=$PATH:/home/手动马赛克/vasp.6.3.2/bin
5. 其他常见问题请补充

注意事项

未经授权, 请勿转载,谢谢。

参考文献

  1. 2019,思想家公社的门口:量子化学·分子模拟·二次元
  2. 2020,【Linux/VASP】关于普通用户无法调用mpirun来运行VASP的问题
  3. 2023, VASP6.3.2版本安装教程
  4. 2022, 科研-OneAPI-安装VASP6.3
  5. 2023, intel icc 已被弃用并将在2023下半年被移除oneAPI
报错[staruser@kvm10 case]$ starccm+ -batch -np 4 -mpidriver openmpi /data/shared/case/test.sim Picked up _JAVA_OPTIONS: -Dsun.java2d.opengl=true Picked up _JAVA_OPTIONS: -Dsun.java2d.opengl=true Picked up _JAVA_OPTIONS: -Dsun.java2d.opengl=true Starting local server: /data/shared/case/opt/20.02.007-R8/STAR-CCM+20.02.007-R8/star/bin/starccm+ -np 4 -mpidriver openmpi -server -xencoded-session L2RhdGEvc2hhcmVkL2Nhc2UvdGVzdC5zaW0= Starting parallel server Intel MKL WARNING: Support of Intel(R) Advanced Vector Extensions (Intel(R) AVX) enabled only processors has been deprecated. Intel oneAPI Math Kernel Library will use Intel(R) Streaming SIMD Extensions 4.2 (Intel(R) SSE4.2) instructions instead. Intel MKL WARNING: Support of Intel(R) Advanced Vector Extensions (Intel(R) AVX) enabled only processors has been deprecated. Intel oneAPI Math Kernel Library will use Intel(R) Streaming SIMD Extensions 4.2 (Intel(R) SSE4.2) instructions instead. Intel MKL WARNING: Support of Intel(R) Advanced Vector Extensions (Intel(R) AVX) enabled only processors has been deprecated. Intel oneAPI Math Kernel Library will use Intel(R) Streaming SIMD Extensions 4.2 (Intel(R) SSE4.2) instructions instead. Intel MKL WARNING: Support of Intel(R) Advanced Vector Extensions (Intel(R) AVX) enabled only processors has been deprecated. Intel oneAPI Math Kernel Library will use Intel(R) Streaming SIMD Extensions 4.2 (Intel(R) SSE4.2) instructions instead. ***************************************************************************************** Warning: CPU contention on 4 processes could not be resolved. CPU affinity will be cleared on those processes. This is a strong indication that another server is already running and on some hosts there are now more processes running than there are physical CPU cores. Over-subscribing a host can severely affect performance. Even when within the limits of hardware multithreading (e.g., hyper-threading), using more processes than CPU cores will likely negatively impact performance. The recommended mode of operation is to use the same number of processes as physical CPU cores. ***************************************************************************************** MPI Distribution : Open MPI-4.1.5 Host 0 -- kvm10 -- Ranks 0-3 Process rank 0 kvm10 509633 Total number of processes : 4 Simcenter STAR-CCM+ 2502 Build 20.02.007 (linux-x86_64-2.28/clang17.0-r8) License build date: 28 October 2024 This version of the code requires license version 2025.02 or greater. Checking license file: /data/shared/case/opt/20.02.007-R8/license.dat 1 copy of ccmpsuite checked out from /data/shared/case/opt/20.02.007-R8/license.dat Feature ccmpsuite does not expire Mon Jul 14 17:53:25 2025 Server::start -host kvm10:47827 Loading: /data/shared/case/test.sim Loading module: StarMeshing Loading module: MeshingSurfaceRepair Loading module: PLMXmlIo Loading module: MaterialModel Loading module: VofModel Loading module: VirtualBodyModel Loading module: StarAmr Loading module: AmrMapping Loading module: ConservativeMapping Loading module: StarResurfacer Loading module: StarTrimmer Loading module: StarExtruder Loading module: SaTurbModel Loading module: ViscousModel Saved by: Simcenter STAR-CCM+ 2502 Build 20.02.007 (linux-x86_64-2.28/clang17.0-r8) Np=2 Started Parasolid modeler version 37.0.150 Running 1 copy of hpcdomains checked out from /data/shared/case/opt/20.02.007-R8/license.dat Feature hpcdomains does not expire 2 copies of hpcdomains checked out from /data/shared/case/opt/20.02.007-R8/license.dat Feature hpcdomains does not expire There is no volume mesh to solve on in region ALL. The mesh pipeline likely needs to be run. Command: Automation.Run error: Server Error There is no volume mesh to solve on in region ALL. The mesh pipeline likely needs to be run. Command: Automation.Run command: CommandComplete error: Server Error Design Simcenter STAR-CCM+ simulation completed Server process exited with code : 0
最新发布
07-15
<think>好的,我现在需要分析用户提供的Star-CCM+运行日志中的错误和警告,并给出解决方案。首先,用户的问题是在运行Star-CCM+时遇到了错误,我需要仔细阅读日志,找出关键问题点。 首先看日志中的警告部分,有“CPU contention on 4 processes could not be resolved”,这说明CPU核心争用的问题,可能是因为当前节点的物理核心数不足4个,或者有其他进程占用了核心。需要检查节点的核心数,并调整进程数。 然后,主要错误是“ There is no volume mesh to solve on in region ALL. The mesh pipeline likely needs to be run.” 这说明仿真文件(.sim)中没有生成体积网格,而求解需要体积网格。用户可能没有运行网格划分步骤,或者网格划分失败了。 接下来,许可证部分提到“1 copy of ccmpsuite checked out”和“hpcdomains”,看起来许可证没有问题,因为没有报错,只是正常的检出信息。 现在需要针对这两个主要问题(CPU争用和无体积网格)给出解决方法。 对于CPU争用,解决方法包括检查节点物理核心数,调整-np参数,或者使用多节点并行。对于无体积网格的问题,需要确保在运行仿真前执行了网格划分流程,可能需要在Star-CCM+ GUI中运行网格,或者通过批处理命令触发网格生成。 另外,用户可能在批处理模式下直接运行求解,但没有生成网格,所以需要指导用户如何在批处理中包含网格生成步骤,比如使用-automation参数指定宏文件,或者在.sim文件中确保网格已生成。 需要确认用户的.sim文件是否已经正确生成了体积网格,可能用户是从其他版本保存的,或者网格生成过程中出现了错误,但日志中没有显示网格生成的错误,所以可能用户忘记运行网格步骤。 总结,主要解决步骤是:1. 解决体积网格缺失的问题;2. 处理CPU核心争用的警告。 </think> 根据提供的日志信息,主要问题集中在**体积网格缺失**和**CPU核心争用警告**,需针对性解决。以下是详细分析及处理方法: ### **一、核心错误:无体积网格导致求解失败** 日志中明确报错: `There is no volume mesh to solve on in region ALL. The mesh pipeline likely needs to be run.` **原因**:`.sim`文件中未生成体积网格(Volume Mesh),而Star-CCM+求解器需要体积网格才能执行计算。可能场景: - 用户仅创建了几何模型或表面网格(Surface Mesh),未运行网格划分流程(Mesh Pipeline); - 网格划分过程中失败(但日志未显示网格错误,可能是手动保存时未完成网格生成)。 #### **解决方法**: 1. **在GUI中确认网格状态**: 使用Star-CCM+ GUI打开`test.sim`文件,检查左侧导航树中的`Mesh Pipeline`节点: - 若`Mesh Pipeline`未展开(无`Surface Remesher`、`Volume Mesh`等子节点),说明未配置网格流程; - 若`Volume Mesh`节点显示红色警告(如`Failed`),需右键点击`Mesh Pipeline`选择`Run`重新生成网格; - 若`Volume Mesh`显示绿色`Succeeded`,则检查`Region ALL`是否关联了正确的网格(右键`Region ALL` → `Mesh` → 确认绑定的网格域)。 2. **批处理模式下自动生成网格**: 若需通过命令行批处理(`-batch`)同时生成网格并求解,需通过**宏文件**(`.mac`)指定网格生成和求解流程。步骤如下: - 在GUI中录制宏:配置网格流程并运行,点击`Tools` → `Record Macro` → 保存为`generate_mesh_and_run.mac`; - 批处理命令中调用宏: ```bash starccm+ -batch -np 4 -mpidriver openmpi -macro generate_mesh_and_run.mac /data/shared/case/test.sim ``` ### **二、次要警告:CPU核心争用** 日志中提示: `Warning: CPU contention on 4 processes could not be resolved. CPU affinity will be cleared on those processes.` **原因**:当前节点(`kvm10`)的物理CPU核心数不足4个,或已存在其他进程占用核心,导致4个MPI进程无法合理绑定核心(超订阅)。 #### **解决方法**: 1. **检查节点物理核心数**: 执行以下命令查看单节点物理核心数(非超线程核心): ```bash lscpu | grep "Core(s) per socket" # 输出示例:Core(s) per socket: 4(表示单节点4个物理核心) lscpu | grep "Socket(s)" # 输出示例:Socket(s): 1(单CPU插槽) ``` 若物理核心总数(`Socket(s)` × `Core(s) per socket`)小于4(如单插槽4核心,但已运行其他进程占用核心),需减少`-np`参数(如`-np 2`)。 2. **使用多节点分担进程(推荐)**: 若集群有多节点,通过`-machinefile`指定多节点分配进程,避免单节点超订阅。例如,创建`machinefile`文件(内容如下): ``` kvm10 slots=2 # 节点kvm10分配2个核心 kvm11 slots=2 # 节点kvm11分配2个核心 ``` 启动命令调整为: ```bash starccm+ -batch -np 4 -mpidriver openmpi -machinefile /path/to/machinefile /data/shared/case/test.sim ``` 3. **关闭核心绑定(临时方案)**: 若需强制使用超线程核心(可能影响性能),通过`-bind-to none`关闭核心绑定: ```bash starccm+ -batch -np 4 -mpidriver openmpi -bind-to none /data/shared/case/test.sim ``` ### **三、其他注意事项** - **Intel MKL警告**:日志中AVX相关警告是因CPU不支持更高版本AVX指令集,不影响功能(仅性能),可忽略;若需消除,需升级支持AVX2/AVX-512的CPU。 - **许可证状态**:日志显示`ccmpsuite`和`hpcdomains`许可证正常检出,无许可证问题。 ### **总结** 优先解决体积网格缺失问题(通过GUI确认网格状态或批处理调用宏生成网格),其次调整进程数或使用多节点避免CPU核心争用。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值