Ubuntu集群跨节点并行问题
-
前几天在一台机子上弄好了并行计算,想把算例弄到集群上跑一跑,上午折腾了一下,三台电脑已经通过网线建立了小集群,OF也在各个电脑上安装好了,那么问题来了,在mpirun 跨节点并行的时候,就出现了这个问题
PS:各个节点都是相同的username 即Ubuntu,各个主机名分别是zwk,node1,node2,它们之间可以无密码登录,我的算例文件是在共享的文件系统中(用nfs搞的)。
parallelDict如下zwk cpu=8 node1 cpu=8 node2 cpu=8
我在各个节点上which了rhoPimpleFoam,它们也都在各自相同的路径下:
/home/Ubuntu/OpenFOAM/OpenFOAM-3.0.1/platforms/linux644GccDPInt32Opt/bin/rhoPimpleFoam
不清楚为什么找不到这个execuable。。。。
-
@Aeronastro 你试下在每个node的~/.bashrc添加
source ~/OpenFOAM/OpenFOAM-2.4.0/etc/bashrc .....
, 感觉是mpirun的时候,在每个node上of240还没加载。 -
@lhzhu 我在每个节点上都添加了这个环境变量的source,每个.bashrc中有这样一段:
#If not running interactively, don't do anything case $- in *i*) ; ; *) return ;; esac
我把这几句注释掉
#If not running interactively, don't do anything #case $- in # *i*) ; ; # *) return ;; #esac
之后是可以读各个节点的processor了,但是还是不能运行
在运行第一步的时候就崩了,这个不清楚是什么原因。
PS:这个算例是OF标准算例,rhoPimpleFoam/les/pitzDaily,单节点运行没问题。 -
你的三台电脑通过什么网线连接的?网卡是什么级别?
-
@cfd-china 就是普通的网线,水晶头的那种,都连到普通交换机上,网卡什么级别我不太清楚,他们的型号都一样
-
计算的时候Execution time和CPU Time差的多么‘?
-
@Aeronastro 你可以配置NIS服务,共享Linux账户信息,home分区用NFS挂载。
-
PS:一直不清楚为什么在.bashrc里的那4句注释掉就可以,之前从来没有对这4句太在意,而是直接添加OF的环境变量就好了。。。
这里解释了为什么:http://www.evernote.com/l/AYvYUlXKzfxBIZ5sJbyk-cREUR1SGcAPIto/
-
我现在是在一台电脑上 进行并行运算,使用的openmpi,测试时,使用hello.c时只能调用两个(我是双核四线程,提示说可以使用线程那个use-hwthread-cpus这个选项,但不知道怎么用),,然后在算例中并行时,也出现无可执行文见
mpirun was unable to find the specified executable file, and therefore did not launch the job. This error was first reported for process rank 0; it may have occurred for other processes as well. NOTE: A common cause for this error is misspelling a mpirun command line parameter option (remember that mpirun interprets the first unrecognized command line token as the executable).
-
Mark一下,解决烦恼
我在每个节点上都添加了这个环境变量的source,每个.bashrc中有这样一段:
#If not running interactively, don't do anything case $- in *i*) ; ; *) return ;; esac
我把这几句注释掉
#If not running interactively, don't do anything #case $- in # *i*) ; ; # *) return ;; #esac
之后是可以读各个节点的processor了,但是还是不能运行
在运行第一步的时候就崩了,这个不清楚是什么原因。
PS:这个算例是OF标准算例,rhoPimpleFoam/les/pitzDaily,单节点运行没问题。