当我在几台计算机上运行mpiexec
时,其中一些计算机无法自动加载其本地环境 - 它们似乎无法运行bashrc
或bash_profile
个文件。当我ssh
进入这些麻烦的计算机时,一切都很好(环境就在那里)。还有什么可以遗漏?
如果我跑
mpiexec -np 1 --host remotehost printenv
我的结果非常小。但是,如果我做以下
ssh remotehost
printenv
我得到了更大更全面的结果。这两者有什么区别?
答案 0 :(得分:0)
MPI作业在不加载.bashrc
的非交互式Shell中运行。与其让每个作业加载自己的.bashrc
,通常不如在对mpiexec的调用中设置环境变量。默认情况下,MPICH将传递启动过程中的所有环境变量,但是对于OpenMPI,您需要使用--envall
选项。