Ошибка при использовании терминала для запуска файла mpi4py

#python #anaconda #mpi4py

#python #anaconda #mpi4py

Вопрос:

Я хочу запустить тестовый файл mpi4py в терминале, но это не удалось.

Операционная система Mac, и я использую anaconda2 с python3. Я установил mpi4py через среду anaconda. Это будет работать на Pycharm, который также использует среду anaconda.

Тестовый код является:

 from mpi4py import MPI
comm = MPI.COMM_WORLD
size = comm.Get_size()
rank = comm.Get_rank()
node_name = MPI.Get_processor_name() # get the name of the node
print ('Hello world from process %d at %s.' % (rank, node_name))
  

и я запускаю это в терминале:
mpirun -np 5 python test.py

сообщение об ошибке :

Обратная трассировка (последний вызов): Файл «test.py «, строка 3, из mpi4py import MPI ImportError: нет модуля с именем mpi4py Traceback (последний вызов): File «test.py «, строка 3, из mpi4py import MPI ImportError: нет модуля с именем mpi4py Traceback (последний вызов): File «test.py «, строка 3, из mpi4py import MPI ImportError: нет модуля с именем mpi4py Traceback (последний вызов): File «test.py «, строка 3, из mpi4py import MPI ImportError: нет модуля с именем mpi4py Traceback (последний вызов): File «test.py «, строка 3, в из mpi4py import MPI

Ошибка импорта: нет модуля с именем mpi4py

mpirun заметил, что задание прервано, но не имеет информации о процессе

это вызвало такую ситуацию.

Ответ №1:

Попробуйте python3 вместо python в командной строке.

 mpirun -np 5 python3 test.py
  

Надеюсь, это сработает.

Ответ №2:

разберитесь с этим…

Хотя я установил mpi4py через anaconda, а среда Python по умолчанию — python3.6 для anaconda, она не установила mpi4py для локальной среды.

После установки pip mpi4py он работает.

Тем не менее, я немного смущен, почему это работает: (Если кто-то случайно увидел этот пост, пожалуйста, дайте мне знать причину:)

В любом случае… не так эффективно использовать anaconda, хе-хе.