pnorbert / adiosvm

Packages and howtos for creating a linux system for ADIOS tutorials
17 stars 25 forks source link

Python: Cannot import adios2 #24

Open j-woz opened 5 years ago

j-woz commented 5 years ago

I am building toward the Gray-Scott in situ pipeline. I cannot import adios2. I can import mpi4py , but import adios2 results in:

Traceback (most recent call last): File "import_adios.py", line 5, in import adios2 ImportError: ERROR: mpi4py not loaded correctly

I am running python3, openmpi, py-mpi4py, py-numpy from Spack.

My ADIOS2 cmake reported:

-- Found MPI_C: /usb1/wozniak/proj/spack/clean/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.3.0/openmpi-3.1.4-6icbx4wzmo4tuzfidmwtqu2takxv265z/lib/libm pi.so (found version "3.1") -- Found MPI_CXX: /usb1/wozniak/proj/spack/clean/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.3.0/openmpi-3.1.4-6icbx4wzmo4tuzfidmwtqu2takxv265z/lib/li bmpi_cxx.so (found version "3.1") -- Found MPI_Fortran: /usb1/wozniak/proj/spack/clean/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.3.0/openmpi-3.1.4-6icbx4wzmo4tuzfidmwtqu2takxv265z/li b/libmpi_usempif08.so (found version "3.1") -- Found MPI: TRUE (found version "3.1") found components: C Fortran CXX -- Found PythonInterp: /usb1/wozniak/proj/spack/clean/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.3.0/python-3.7.3-r6r7ezh2rfmjlsxrivsa2lx3g5mozxzy/bin/python3 (found version "3.7.3") -- Found PythonLibs: /usb1/wozniak/proj/spack/clean/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.3.0/python-3.7.3-r6r7ezh2rfmjlsxrivsa2lx3g5mozxzy/lib/libpython3.7m.so (found version "3.7.3") -- Found PythonModule_numpy: /usb1/wozniak/proj/spack/clean/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.3.0/py-numpy-1.16.2-nc6pfi2ejbmmytfaewoytodexakcvpdm/lib/python3.7/site-packages/numpy
-- Found PythonModule_mpi4py: /usb1/wozniak/proj/spack/clean/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.3.0/py-mpi4py-3.0.1-frisvuxcphcxkwrybf4ptv7k7bfcatbv/lib/python3.7/site-packages/mpi4py

At runtime, I do:

spack load openmpi spack load python@3.7.3 spack load py-numpy spack load py-mpi4py

then append the ADIOS2 PYTHONPATH and LD_LIBRARY_PATH entries. What else can I check?

williamfgc commented 5 years ago

@jmjwozniak it might worth taking a look at ldd /usb1/wozniak/proj/spack/clean/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.3.0/py-mpi4py-3.0.1-frisvuxcphcxkwrybf4ptv7k7bfcatbv/lib/python3.7/site-packages/mpi4py/MPI*.so similarly check libadios2.so and the Python module adios2.so (adios2/lib/python3/...) and see if it depends on the same openmpi adios2 was used for compilation.