2013-07-11 13 views
0

我已經成功地在服務器和我的電腦之間設置了更少的密碼ssh。 有一個簡單的openMPI程序在單臺計算機上運行良好。 但是,不幸的是,當我在集羣上嘗試這個時,我沒有得到密碼提示(因爲我設置了ssh授權),也沒有執行前進。在服務器集羣上運行openMPI時發生無限等待?

HOSTFILE看起來是這樣的,

# The Hostfile for Open MPI 

# The master node, 'slots=8' is used because it has 8 cores 
    localhost slots=8 
# The following slave nodes are single processor machines: 
    [email protected] slots=8 
    [email protected] slots=160 

我在集羣上運行的hello world MPI程序,

int main(int argc, char *argv[]) { 
    int numprocs, rank, namelen; 
    char processor_name[MPI_MAX_PROCESSOR_NAME]; 
    double t; 
    MPI_Init(&argc, &argv); 
    t=MPI_Wtime();  
    MPI_Comm_size(MPI_COMM_WORLD, &numprocs); 
    MPI_Comm_rank(MPI_COMM_WORLD, &rank); 
    MPI_Get_processor_name(processor_name, &namelen); 

    printf("Process %d on %s out of %d\n", rank, processor_name, numprocs); 
    MPI_Finalize(); 
} 

,我使用-d選項時運行這樣mpirun -np 16 --hostfile hostfile ./hello

, 的日誌是這樣的,

[[email protected]:~/LTE/check ]% mpirun -np 16 --hostfile hostfile -d ./hello 
[pcys33.grm.polymtl.ca:02686] procdir: /tmp/[email protected]_0/60067/0/0 
[pcys33.grm.polymtl.ca:02686] jobdir: /tmp/[email protected]_0/60067/0 
[pcys33.grm.polymtl.ca:02686] top: [email protected]_0 
[pcys33.grm.polymtl.ca:02686] tmp: /tmp 
[srvgrm04:77812] procdir: /tmp/[email protected]_0/60067/0/1 
[srvgrm04:77812] jobdir: /tmp/[email protected]_0/60067/0 
[srvgrm04:77812] top: [email protected]_0 
[srvgrm04:77812] tmp: /tmp 

你能從日誌中作出推斷嗎?

+0

也許嘗試了'-d'爲'mpirun'得到一些想法發生了什麼的防火牆。 – Zulan

+0

我編輯包含日誌時,我試了-d選項與運行! –

+0

你確定'hello'存在於所有節點上,並且位於相同的文件系統路徑中嗎?顯然,ORTE守護進程正在第二個節點上成功啓動,儘管日誌中缺少'pcys13.grm.polymtl.ca'可能表明連接到它的問題(或者它是srvgrm04的別名?)順便說一句,如果主機文件中的用戶名與主機上的用戶名相同,則不需要指定用戶名。 –

回答

相關問題