2017-01-04 9 views
1

У меня Ubuntu Desktop LTS 16.04.1, и я сделал следующее. Я пошел в https://www.open-mpi.org/software/ompi/v2.0/, скачал OpenMPI-2.0.1.tar.gz и установил его с помощью следующих команд:Ubuntu mpi4py не компилируется

tar -xvf openmpi-2.0.1.tar.gz 
cd openmpi-2.0.1 
./configure --prefix="/home/$USER/.openmpi" 
make 
sudo make install 
export PATH="$PATH:/home/$USER/.openmpi/bin" 
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/$USER/.openmpi/lib/" 
echo export PATH="$PATH:/home/$USER/.openmpi/bin" >> /home/$USER/.bashrc 
echo export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/$USER/.openmpi/lib/" >> /home/$USER/.bashrc 

После того, как я установил mpi4py с помощью:

sudo apt-get update 
sudo apt-get install python-mpi4py 

После этого, Я создал файл Python (моя версия Python является Python 2.7.12) с именем something.py, имеющий следующие строки

from mpi4py import MPI 
comm = MPI.COMM_WORLD 
rank = comm.Get_rank() 
print "hello world from process ", rank 

Когда я пытаюсь запустить его с помощью Mpiexec -n 5 питона something.py, я получаю следующее:

------------------------------------------------------- 
Primary job terminated normally, but 1 process returned 
a non-zero exit code.. Per user-direction, the job has been aborted. 
------------------------------------------------------- 
-------------------------------------------------------------------------- 
It looks like orte_init failed for some reason; your parallel process is 
likely to abort. There are many reasons that a parallel process can 
fail during orte_init; some of which are due to configuration or 
environment problems. This failure appears to be an internal failure; 
here's some additional information (which may only be relevant to an 
Open MPI developer): 

    opal_init failed 
    --> Returned value Error (-1) instead of ORTE_SUCCESS 
-------------------------------------------------------------------------- 
*** An error occurred in MPI_Init_thread 
*** on a NULL communicator 
*** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort, 
*** and potentially your MPI job) 
[vlad-VirtualBox:3551] Local abort before MPI_INIT completed successfully; not able to aggregate error messages, and not able to guarantee that all other processes were killed! 
[vlad-VirtualBox:03551] mca: base: component_find: unable to open /usr/lib/openmpi/lib/openmpi/mca_shmem_mmap: /usr/lib/openmpi/lib/openmpi/mca_shmem_mmap.so: undefined symbol: opal_show_help (ignored) 
[vlad-VirtualBox:03551] mca: base: component_find: unable to open /usr/lib/openmpi/lib/openmpi/mca_shmem_sysv: /usr/lib/openmpi/lib/openmpi/mca_shmem_sysv.so: undefined symbol: opal_show_help (ignored) 
[vlad-VirtualBox:03551] mca: base: component_find: unable to open /usr/lib/openmpi/lib/openmpi/mca_shmem_posix: /usr/lib/openmpi/lib/openmpi/mca_shmem_posix.so: undefined symbol: opal_shmem_base_framework (ignored) 
-------------------------------------------------------------------------- 
It looks like opal_init failed for some reason; your parallel process is 
likely to abort. There are many reasons that a parallel process can 
fail during opal_init; some of which are due to configuration or 
environment problems. This failure appears to be an internal failure; 
here's some additional information (which may only be relevant to an 
Open MPI developer): 

    opal_shmem_base_select failed 
    --> Returned value -1 instead of OPAL_SUCCESS 
-------------------------------------------------------------------------- 
-------------------------------------------------------------------------- 
It looks like MPI_INIT failed for some reason; your parallel process is 
likely to abort. There are many reasons that a parallel process can 
fail during MPI_INIT; some of which are due to configuration or environment 
problems. This failure appears to be an internal failure; here's some 
additional information (which may only be relevant to an Open MPI 
developer): 

    ompi_mpi_init: ompi_rte_init failed 
    --> Returned "Error" (-1) instead of "Success" (0) 
-------------------------------------------------------------------------- 
-------------------------------------------------------------------------- 
It looks like orte_init failed for some reason; your parallel process is 
likely to abort. There are many reasons that a parallel process can 
fail during orte_init; some of which are due to configuration or 
environment problems. This failure appears to be an internal failure; 
here's some additional information (which may only be relevant to an 
Open MPI developer): 

    opal_init failed 
    --> Returned value Error (-1) instead of ORTE_SUCCESS 
-------------------------------------------------------------------------- 
*** An error occurred in MPI_Init_thread 
*** on a NULL communicator 
*** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort, 
*** and potentially your MPI job) 
[vlad-VirtualBox:3552] Local abort before MPI_INIT completed successfully; not able to aggregate error messages, and not able to guarantee that all other processes were killed! 
[vlad-VirtualBox:03552] mca: base: component_find: unable to open /usr/lib/openmpi/lib/openmpi/mca_shmem_mmap: /usr/lib/openmpi/lib/openmpi/mca_shmem_mmap.so: undefined symbol: opal_show_help (ignored) 
[vlad-VirtualBox:03552] mca: base: component_find: unable to open /usr/lib/openmpi/lib/openmpi/mca_shmem_sysv: /usr/lib/openmpi/lib/openmpi/mca_shmem_sysv.so: undefined symbol: opal_show_help (ignored) 
[vlad-VirtualBox:03552] mca: base: component_find: unable to open /usr/lib/openmpi/lib/openmpi/mca_shmem_posix: /usr/lib/openmpi/lib/openmpi/mca_shmem_posix.so: undefined symbol: opal_shmem_base_framework (ignored) 
-------------------------------------------------------------------------- 
It looks like opal_init failed for some reason; your parallel process is 
likely to abort. There are many reasons that a parallel process can 
fail during opal_init; some of which are due to configuration or 
environment problems. This failure appears to be an internal failure; 
here's some additional information (which may only be relevant to an 
Open MPI developer): 

    opal_shmem_base_select failed 
    --> Returned value -1 instead of OPAL_SUCCESS 
-------------------------------------------------------------------------- 
-------------------------------------------------------------------------- 
It looks like MPI_INIT failed for some reason; your parallel process is 
likely to abort. There are many reasons that a parallel process can 
fail during MPI_INIT; some of which are due to configuration or environment 
problems. This failure appears to be an internal failure; here's some 
additional information (which may only be relevant to an Open MPI 
developer): 

    ompi_mpi_init: ompi_rte_init failed 
    --> Returned "Error" (-1) instead of "Success" (0) 
-------------------------------------------------------------------------- 

Большинство решений говорят, установить OpenMPI непосредственно из источника, который я сделал, но это не похоже, чтобы решить мою проблему. У кого-то есть аналогичная проблема?

ответ

1

Я только что решил: я удалил mpi4py, я установил python-pip, и я установил с sudo mpi4py через pip. Список comands:

sudo apt-get remove python-mpi4py 
sudo apt-get update && sudo apt-get -y upgrade 
sudo apt-get install python-pip 
sudo pip install mpi4py 

ПРИМЕЧАНИЕ: Ты должен немного подождать после Sudo APT-получить обновление & & Sudo APT-получить -y обновления. Теперь этот вопрос можно закрыть, спасибо.

 Смежные вопросы

  • Нет связанных вопросов^_^