2014-09-27 9 views
2

MPI 기능이있는 IPython 클러스터를 시작하는 데 매우 어려움을 겪고 있습니다. 우선 MPI와 MPI4py가 설치되어 있고 작동 중입니다. 마침내 ipython 내에서 mpi 파이썬 코드를 실행하는 방법을 알아 냈습니다. 그러나, 나는 IPython 노트북에서 작동 mpi 프로필을 얻으려고하고 있으며 손실에 있습니다. 나는 모든 문서를 읽었고 주제에 대한 강의를 많이 보았고 누군가가하고있는 것을 복제하려고 할 때마다 항상 오류가 발생합니다. 그래, 내가 bash 프롬프트에서 입력하면 :IPython 노트북 MPI 클러스터 시작

ipython profile create --parallel --profile=mpi 

나는 노트북에 들어가서 그 클러스터를 볼 수있다.

%pylab inline 
from IPython.parallel import Client, error 
cluster=Client(profile="mpi") 
view=cluster[:] 
view.block=True 

%%px 

from mpi4py import MPI 
import numpy as np 
import time 

mpi=MPI.COMM_WORLD 
bcast=mpi.bcast 
barrier=mpi.barrier 
rank=mpi.rank 
print "MPI rank is %i/%i" % (rank,mpi.size) 

내가 얻을 :

MPI rank is 0/1 
MPI rank is 0/1 
MPI rank is 0/1 
MPI rank is 0/1 
MPI rank is 0/1 
MPI rank is 0/1 
MPI rank is 0/1 
MPI rank is 0/1 

을 내가 또한 경우 : 그럼 내가 시작 액션 버튼을 눌렀을하여 시작하면 그것은 내가 할 경우 다음은 절대 시작

from Ipython import parallel 

rc=parallel.Client() 
rc.block=True 
rc.ids 

rc = parallel.Client() 라인을 가리키는 오류가 발생합니다. 그런 다음 두 클러스터 모두 기본 클러스터에서 정상적으로 작동합니다 ... 또한 시도했습니다.

ipcluster start -n 8 --engines=MPIEngineSetLauncher 
배쉬 프롬프트에서

와 나는 거기에서 클러스터를 시작하려고하고 프롬프트 다시 언제 결코 내가 GUI 버튼 프로필 = MPI 시작한 후 나는 노트북에서이를 넣어 경우 :

from IPython.parallel import Client 
c=Client(profile='mpi') 
c.IPClusterEngines.engine_launcher_class='MPIEngineSetLauncher' 

을 나는 다른 오류가 발생합니다. 나는이 일을하기 위해 노력하고 있습니다. 그래서 나는 이틀 동안 시뮬레이션을 할 수 있고 아무도이 일을하지 못하는 학교에 있습니다. 제발 도와주세요

+0

"다른 오류"란 무엇입니까? –

답변

1

좋아요. 그래서 나는 단순히 당신이 실행 한 후 이해하지 않았다 :

ipython profile create --parallel --profile=mpi 

다음 :

ipcluster start -n 8 --engines=MPIEngineSetLauncher 

당신은 단지 새로운 터미널을 열고 이전 단말기에서 실행하는 엔진을 수 있도록해야합니다. 그게 다야! 그런 다음 ipython에 들어가면 모든 명령이 작동합니다.