최근에 하나의 마스터 노드와 두 개의 클라이언트 노드를 사용하여 Beowulf 클러스터를 설정했습니다. 클라이언트 노드는 모두 마스터 노드의 /home/mpiuser/
디렉토리를 공유하며 마스터 노드에서 디렉토리가 변경 될 때마다 자동으로 업데이트됩니다. 나는 성공적으로 예를 들어 내가 노력하고 내가 여기에 생성 된 파이썬 파일을 실행하면 다음 다음과 같은 출력Beowulf 클러스터에서 개인 작업을 올바르게 실행할 수 없습니다. 예제 작업이 잘 작동합니다.
Process 0 of 3 is on Master
Process 2 of 3 is on Slave2
Process 1 of 3 is on Slave1
pi is approximately 3.1415926544231318, Error is 0.0000000008333387
wall clock time = 0.001477
을 제공하는 다음 명령
$ mpiexec -f hosts -n 3 /home/mpiuser/mpich2-1.4.1/examples/cpi
와 MPICH2를 다운로드 할 때 주어진 cpi
파일을 컴파일 실행 한 이 명령을 사용하여 /home/mpiuser/Development/fact_test.py
,
$ mpiexec -f hosts -n 3 /home/mpiuser/Development/fact_test.py
나는 다음과 같은 오류를 얻을 수
[proxy:0:[email protected]] HYDU_create_process (./utils/launch/launch.c:69): execvp error on file /home/mpiuser/Development/fact_test.py (Permission denied)
[proxy:0:[email protected]] HYDU_create_process (./utils/launch/launch.c:69): execvp error on file /home/mpiuser/Development/fact_test.py (Permission denied)
[proxy:0:[email protected]] HYDU_create_process (./utils/launch/launch.c:69): execvp error on file /home/mpiuser/Development/fact_test.py (Permission denied)
또한, 나는 또한 올바르게 입력 및 출력 마스터와 클라이언트 노드의 이름을 얻을 수 있습니다 :
$ mpirun --machinefile hosts hostname
Master
Slave1
Slave2
나는 오류가 어디에서 오는 아주 확실하지 않다. 몇 가지 추가 정보 : MPICH2 버전 : 1.4.1 파이썬 버전 : 3.5.2
fact_test.py : 당신이 더 이상 정보가 필요하면
import scipy as sp
import time
def factorial_func(i):
return sp.math.factorial(i)
if __name__ == "__main__":
i = 1e5
t0 = time.time()
fac = factorial_func(i)
t1 = time.time()
print(t1-t0)
내가 제공 드리겠습니다. 감사!
이 될 것입니다. 문제가 해결되었습니다. –