2013-07-11 2 views
0

서버와 컴퓨터 사이의 암호를 적게 설정했습니다. 단일 컴퓨터에서 잘 실행되는 간단한 openMPI 프로그램이 있습니다. 하지만 유감스럽게도 클러스터에서이 작업을 시도 할 때 암호 프롬프트가 표시되지 않으며 (ssh 인증을 설정했기 때문에) 실행도 진행되지 않습니다.서버 클러스터에서 openMPI를 실행하는 동안 무한 대기합니까?

Hostfile 내가

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(); 
} 

클러스터에 안녕하세요 세계 MPI 프로그램을 실행하고 있고 -d 옵션을 사용할 때이 mpirun -np 16 --hostfile hostfile ./hello

처럼 실행하고

# 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 

, 다음과 같습니다 , 로그는 다음과 같습니다.

[[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

무슨 일이 일어나고 있는지 몇 가지 아이디어를 얻기 위해 'mpirun'에'-d' 시도의 방화벽을 해제해야합니다. – Zulan

+0

내가 실행할 때 -d 옵션을 시도했을 때 로그를 포함하도록 편집했습니다! –

+0

모든 노드에서'hello'가 존재하고 동일한 파일 시스템 경로에 있는지 확인합니까? 로그에'pcys13.grm.polymtl.ca'가 없으면 연결에 문제가 있음을 나타낼 수 있지만 (또는'srvgrm04'에 대한 별명입니까?) ORTE 데몬은 두 번째 노드에서 성공적으로 시작됩니다. BTW, 사용자가 마스터 호스트에있는 사용자 이름과 같으면 hostfile에 사용자 이름을 지정할 필요가 없습니다. –

답변