MPI下执行出现的奇怪问题

2019-04-15 14:46发布

两台机器上面执行同样的命令,同样的程序,得出截然相反的结果, 这是神马情况? node11上面: 1. 执行 mpiexec -np 16 piC , 报错: [proxy:0:0@node11] HYDU_create_process (./utils/launch/launch.c:69): execvp error on file piC (No such file or directory) 2. 改为执行piexec -np 16 ./piC ,程序正常执行. node12上面: 1. 执行 mpiexec -np 16 ./piC ,报错: [proxy:0:0@node11] HYDU_create_process (./utils/launch/launch.c:69): execvp error on file ./piC (No such file or directory) 2. 执行 mpiexec -np 16 piC, 正常执行. 两台机器上面都是同样的程序,执行同样的命令,得到了截然相反的结果,让哥情何以堪..... 注意到报错的都是node11的问题, 解决如下: 1. node12上面的问题是因为node11上没有同名的目录,执行文件又找错了, node11上面则是因为exec的执行顺序: http://linux.about.com/library/cmd/blcmdl3_execvp.htm
The functions execlp and execvp will duplicate the actions of the shell in searching for an executable file if the specified file name does not contain a slash (/) character. The search path is the path specified in the environment by the PATH variable. If this variable isn't specified, the default path ``:/bin:/usr/bin'' is used. In addition, certain errors are treated specially. 我勒个去。。。。。