Как заставить mpi4py использовать MPI версии 3.0

Недавно я установил mpi4py версии 2.0.0 для python3. Я хочу, чтобы этот API использовал MPI версии 3.0, но по умолчанию он использует MPI версии 2.0. Как я могу заставить его использовать MPI версии 3.0.

PS: я установил mpi4py, используя «pip3 install mpi4py».


person Bikash Joshi    schedule 05.12.2016    source источник
comment
Вы читали документацию? Знаете ли вы о различиях между MPI и реализацией MPI?   -  person Zulan    schedule 05.12.2016
comment
Привет Зулан, я прочитал документацию. Кстати не нашел ответа на свой вопрос. При установке mpi4py на двух разных машинах, на одной установлена ​​MPI.VERSION 2.0, а на другой — MPI.VERSION 3.0.   -  person Bikash Joshi    schedule 05.12.2016
comment
Я подозреваю, что mpicc / MPICC на этих машинах что-то другое.   -  person Zulan    schedule 05.12.2016


Ответы (1)


mpi4py — это просто оболочка для вызова функций MPI в Python. Эти функции MPI (и реализованная версия стандарта MPI) предоставляются реализацией MPI (например, openmpi или mpich), которую вы установили на свой компьютер, а не mpi4py.

Итак, что вам нужно сделать:

  1. Убедитесь, что вы установили правильную реализацию MPI, которая поддерживает/реализует стандарт MPI 3.
  2. Убедитесь, что mpi4py выбирает эту реализацию, что обычно делается путем изменения этой реализации MPI на реализацию по умолчанию (или вы можете просто удалить все другие установленные вами реализации MPI)
  3. Убедитесь, что mpi4py правильно работает с этой реализацией MPI (обычно путем пересборки и переустановки mpi4py)

Я не уверен, что раньше, но, по крайней мере, openmpi 2.1.1 поддерживает MPI 3.

person renyuneyun    schedule 28.06.2017