LAM/MPI 병렬 처리 프로그램
글쓴이: 이웅희 / 작성시간: 수, 2008/01/09 - 3:18오후
LAM 7.1.4와 인텔 포트란 10 버전을 설치하고 병렬 프로세싱을 지원하는 프로그램 A를 설치하였습니다.
우분투 gutsy로 쿼드코어 컴퓨터 4대를 클러스터링하였습니다.
lamboot 도 잘되고 ssh도 authorized_keys2에 넣어 암호 묻지 않고 잘 됩니다.
또한 실행하고자하는 프로그램과 사용자들의 디렉토리를 nfs로 묶어서 공유하고 있습니다.
echo $PATH 해보면 실행하려는 프로그램 A의 경로가 잘 잡혀있고 각각의 노드의 쉘에서 A를 실행했을때 실행이 됩니다.
문제는 다음과 같습니다.
lamboot -v로 데몬을 띄우고 mpirun으로 실행하면 프로그램이 없는 경로에서는 실행이 정상적으로 되지 않습니다.(경로가 잡혀 있음에도..)
예를 들어 프로그램이 /users1/prg/bin 에 설치되어 있다고 할때,
메인노드에서
$ mpirun n0 A -> 실행성공
$ mpirun n1 A -> no such file or directory
$ mpirun n2 A -> no such file or directory
$ mpirun n3 A -> no such file or directory
이렇게 다른 노드에서 경로를 찾지 못하는 문제가 발생되고 있습니다.
LAM을 위한 경로를 설정하는 파일이 있을것 같은데요(제생각엔..) 그것이 무엇인지 모르겠습니다.
답변 부탁드립니다.
Forums:
편법을 쓰긴 했습니다..
그 프로그램들을 모두 심볼링 링크로 /usr/bin 아래에 걸어두니 돌아가긴 합니다만 뭔가 찜찜합니다.
혹시 so dynamic dependency문제일수도 있습니다.
홈디렉토리를 NFS로 묶으셨다고 했으니 머신마다 path가 다른건
아닐것 같고요,
혹시 ldd <실행파일이름> 해보면
해당 노드에서 unresolved so library의존성이 걸려있는 건 아닌지요?
실행파일 이름에 Full
실행파일 이름에 Full Path name으로 해보세요
mpirun -np 4 /users1/prg/bin/a.out
이렇게 해보세요
--------------------------------
윈도위의 리눅스 윈도위의 윈도우 리눅스위의 익스플로러
--------------------------------
윈도위의 리눅스 윈도위의 윈도우 리눅스위의 익스플로러
댓글 달기