Я пытаюсь запустить свою программу python в кластере, управляемом SLURM (в котором я новичок). Я использовал python joblib для распараллеливания некоторых циклов for в моей программе. Есть ли способ выполнить мою работу (состоящую только из моей программы, поэтому только одна задача ) на нескольких узлах, чтобы она могла получить доступ к большему количеству процессоров, чем только на одном узле?
EDIT: После this (но, конечно, вызывая mpriun из моего sbatch-файла), он выдает ошибку перед последним ранжированным процессом:
Traceback (most recent call last):
File "arisMPI.py", line 4, in <module>
comm.Barrier()
File "mpi4py/MPI/Comm.pyx", line 567, in mpi4py.MPI.Comm.Barrier
mpi4py.MPI.Exception: Unknown error class, error stack:
PMPI_Barrier(289).....................: MPI_Barrier(comm=MPI_COMM_WORLD) failed
PMPI_Barrier(275).....................:
MPIR_Barrier_impl(175)................:
MPIR_Barrier_intra_auto(110)..........:
MPIR_Barrier_intra_dissemination(49)..:
MPIDU_Complete_posted_with_error(1137): Process failed
Traceback (most recent call last):
File "arisMPI.py", line 4, in <module>
comm.Barrier()
File "mpi4py/MPI/Comm.pyx", line 567, in mpi4py.MPI.Comm.Barrier
mpi4py.MPI.Exception: Unknown error class, error stack:
PMPI_Barrier(289).....................: MPI_Barrier(comm=MPI_COMM_WORLD) failed
PMPI_Barrier(275).....................:
MPIR_Barrier_impl(175)................:
MPIR_Barrier_intra_auto(110)..........:
MPIR_Barrier_intra_dissemination(49)..:
MPIDU_Complete_posted_with_error(1137): Process failed
Вы случайно не подозреваете, что это может быть о? Этого не происходит при работе только на одном узле. Я погуглил, но не смог найти однозначного ответа, только другие люди, которые столкнулись с той же проблемой. Удаление mpi4py и установка правильного пути mpi cc во время установки mpi4py решили эту проблему.