로컬 컴퓨터에서 doMPI 패키지를 실행하려고하기 때문에 이전에 테스트를 수행 할 수 있습니다. 클러스터에 작업 제출. 나는 Mac OSX Yosemite를 사용 중이며 brew를 통해 열린 mpi 2.0.2를 설치했습니다.doMPI 오류 : 응용 프로그램에서 요청한 슬롯 2 개를 충족시킬 수있는 슬롯이 시스템에 충분하지 않습니다.
mpirun -V
mpirun (Open MPI) 2.0.2
Report bugs to http://www.open-mpi.org/community/help/
나는 doMPI에 대한 소개를 통해 읽고 난
mpirun -H localhost R --slave -f sincMPI.R
불행히도 나는 다음과 같은 오류가 계속 얻을 데모의 예제를 실행하기 위해 노력하고있어. 내가 봤지만 주위에 뭘 잘못 알아낼 수가 없어.
> Loading required package: foreach Loading required package: iterators
> Loading required package: Rmpi
> --------------------------------------------------------------------------
> There are not enough slots available in the system to satisfy the 2
> slots that were requested by the application:
> /Library/Frameworks/R.framework/Resources/bin/Rscript
>
> Either request fewer slots for your application, or make more slots
> available for use.
> --------------------------------------------------------------------------
> Error in mpi.comm.spawn(slave = rscript, slavearg = args, nslaves =
> count, : MPI_ERR_SPAWN: could not spawn processes Calls:
> startMPIcluster -> mpi.comm.spawn -> .Call Execution halted
> -------------------------------------------------------
> Primary job terminated normally, but 1 process returned a non-zero exit code..
>Per user-direction, the job has been aborted.
> -------------------------------------------------------
> --------------------------------------------------------------------------
> mpirun detected that one or more processes exited with non-zero
> status, thus causing the job to be terminated. The first process to do
> so was:
>
> Process name: [[27630,1],0] Exit code: 1
편집 : 지정된 근무
아래의 답변에 따라 테스트 결과 :
mpirun -H localhost,localhost,localhost R --slave -f sincMPI.R
나는 startMPIcluster()에서 카운트 = 2를 꺼내서 또한 일했다.
startMPIcluster() #in sincMPI.R
mpirun -H localhost,localhost,localhost R --slave -f sincMPI.R
count = 2를 취하면 mpi로 호스트 수를 변경할 수 있습니다. 여기서 네 개의 호스트를 지정합니다.
startMPIcluster() #in sincMPI.R
mpirun -H localhost,localhost,localhost,localhost R --slave -f sincMPI.R
이 방법을 사용하여 사용 가능한 코어 수 이상을 지정할 수도 있습니다. 나는 8 개의 (논리적 인) 코어를 가지고 있지만 9 개의 호스트를 지정할 수 있으며 실행됩니다. startMPIcluster()에
mpirun -H localhost,localhost,localhost,localhost,localhost,localhost,localhost,localhost,localhost R --slave -f sincMPI.R
그러나, 당신은 넣어 수 없습니다 수 = 9
startMPIcluster(count=9)
Error in startMPIcluster(count = 9) :
count must be either unspecified, or set to 8
Execution halted
그래서, 아마도 맥에 테스트 MPI에 대한 가장 좋은 방법은 startMPIcluster의 수를 설정하지 않는 것입니다, 사용 -H 작업 수를 제어합니까?
잘 돌아갔습니다. 감사합니다! MPI가 Mac에서 어떻게 작동 하는지를보기 위해 몇 가지 실험을했습니다. 기록을 위해, 나는 원래의 질문에 결과를 넣을 것입니다. –