执行qsub提交PBS作业时mpiexec报错:无法找到可执行文件–np
解决mpiexec无法识别-np/-n参数的问题
- 检查参数符号是否为半角:报错里的“–np”是全角长破折号,系统会把它当作可执行文件名而非命令参数。把脚本中mpiexec的参数破折号全部替换为半短破折号
-,确保是-np而非–np。 - 确认mpiexec命令语法:正确格式应为
mpiexec -np <进程数> <可执行文件路径>,比如mpiexec -np 4 ./file。如果参数顺序颠倒(比如写成mpiexec ./file -np 4),系统会把-np识别为待执行程序,触发错误。 - 确保已生成可执行文件:先用
mpicc file.c -o file编译主程序,脚本中要指定正确的可执行文件路径(相对或绝对路径),避免因找不到可执行文件导致命令解析错误。 - 匹配MPI实现的参数:不同MPI版本参数略有差异(OpenMPI用
-np,部分版本支持-n),但核心是参数位置和符号必须正确,不要混用全角/半角符号。
示例正确的PBS脚本片段:
#PBS -l nodes=2:ppn=2 #PBS -N my_mpi_job cd $PBS_O_WORKDIR mpiexec -np 4 ./file
内容的提问来源于stack exchange,提问作者Jonathan
相关产品推荐
相关产品推荐

