There seems to be an issue again with mpi4py, which is required by mmpbsa calculations. I am not sure where to start but I do not think that cmake installs mpi4py at all (in my case). After serial installation, the parallel installation is done with the following options:
# Assume this is Linux:
cmake $AMBER_PREFIX/amber22_src \
-DCMAKE_INSTALL_PREFIX=$AMBER_PREFIX/amber22 \
-DCOMPILER=GNU \
-DMPI=YES -DCUDA=FALSE -DINSTALL_TESTS=TRUE \
-DDOWNLOAD_MINICONDA=TRUE \
2>&1 | tee cmake.log
When I check out the cmake.log file after running run_cmake, I am seeing in two lines the word "mpi4py":
-- Checking for Python package mpi4py -- not found
-- ---building bundled: -----------------------------------------------------.
.
.
.
-- [[32mmpi4py[[0m [[1;29m- MPI support library for MMPBSA.py[[0m
.
.
After the compilation, when I perform mmpbsa calculations as I normally do, I see the following output:
Traceback (most recent call last):
File "/home/iyildirim/programs/amber22/bin/MMPBSA.py.MPI", line 55, in <module>
raise MMPBSA_Error('Could not import mpi4py package! Use serial version '
MMPBSA_mods.exceptions.MMPBSA_Error: Could not import mpi4py package! Use serial version or install mpi4py.
Traceback (most recent call last):
File "/home/iyildirim/programs/amber22/bin/MMPBSA.py.MPI", line 53, in <module>
Traceback (most recent call last):
File "/home/iyildirim/programs/amber22/bin/MMPBSA.py.MPI", line 53, in <module>
from mpi4py import MPI
ModuleNotFoundError: No module named 'mpi4py'
When I check out if mpi4py is already installed in amber.python I am seeing the following output:
iyildirim.rnachem:~/programs/amber20_src/build$ amber.python
Python 3.9.12 (main, Apr 5 2022, 06:56:58)
[GCC 7.5.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import mpi4py
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'mpi4py'
>>>
PYTHONPATH is directed to the following directory:
iyildirim.rnachem:~/programs/amber20_src/build$ echo $PYTHONPATH
/home/iyildirim/programs/amber22/lib/python3.9/site-packages
Also, I do not see any mpi4py file inside $AMBERHOME:
iyildirim.rnachem:~/programs/amber22$ find ./ -name "*mpi4py*"
iyildirim.rnachem:~/programs/amber22$
Weird thing is that the files are present in the XXX_src directory:
iyildirim.rnachem:~/programs/amber22_src$ find ./ -name "*mpi4py*"
./build/AmberTools/src/mpi4py-3.1.3
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py-build
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py-build/mpi4py-build.stamp
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py-build/lib.linux-x86_64-3.9/mpi4py
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py-build/lib.linux-x86_64-3.9/mpi4py/include/mpi4py
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py-build/lib.linux-x86_64-3.9/mpi4py/include/mpi4py/mpi4py.MPI.h
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py-build/lib.linux-x86_64-3.9/mpi4py/include/mpi4py/mpi4py.MPI_api.h
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py-build/lib.linux-x86_64-3.9/mpi4py/include/mpi4py/mpi4py.i
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py-build/lib.linux-x86_64-3.9/mpi4py/include/mpi4py/mpi4py.h
./build/AmberTools/src/mpi4py-3.1.3/CMakeFiles/mpi4py.dir
./AmberTools/src/mpi4py-3.1.3
./AmberTools/src/mpi4py-3.1.3/src/mpi4py
./AmberTools/src/mpi4py-3.1.3/src/mpi4py/include/mpi4py
./AmberTools/src/mpi4py-3.1.3/src/mpi4py/include/mpi4py/mpi4py.MPI.h
./AmberTools/src/mpi4py-3.1.3/src/mpi4py/include/mpi4py/mpi4py.MPI_api.h
./AmberTools/src/mpi4py-3.1.3/src/mpi4py/include/mpi4py/mpi4py.i
./AmberTools/src/mpi4py-3.1.3/src/mpi4py/include/mpi4py/mpi4py.h
./AmberTools/src/mpi4py-3.1.3/src/mpi4py.egg-info
./AmberTools/src/mpi4py-3.1.3/src/mpi4py.MPI.c
It seems that mpi4py is compiled within _src but not copied to $AMBERHOME. I am seeing also the following output in CMakeCache.txt:
iyildirim.rnachem:~/programs/amber22_src/build$ grep mpi4py *
grep: amber-modules: Is a directory
grep: AmberTools: Is a directory
grep: benchmarks: Is a directory
grep: cmake: Is a directory
CMakeCache.txt://Whether the Python package mpi4py was found
CMakeCache.txt:mpi4py_BINARY_DIR:STATIC=/home/iyildirim/programs/amber22_src/build/AmberTools/src/mpi4py-3.1.3
CMakeCache.txt:mpi4py_IS_TOP_LEVEL:STATIC=OFF
CMakeCache.txt:mpi4py_SOURCE_DIR:STATIC=/home/iyildirim/programs/amber22_src/AmberTools/src/mpi4py-3.1.3
grep: CMakeFiles: Is a directory
Is the line "mpi4py_IS_TOP_LEVEL:STATIC=OFF" normal or should it be ON? Any ideas on what is going on? Thanks.
Best,
Ilyas Yildirim, Ph.D.
---------------------------------------------------------
= Assistant Professor =
= Department of Chemistry & Biochemistry =
= Florida Atlantic University =
= 5353 Parkside Drive, Jupiter, FL 33458 =
= Building MC17, Room # 224 =
= Phone: +1(561)799-8325 | E-mail: iyildirim_at_fau.edu =
---------------------------------------------------------
= Website: https://cescos.fau.edu/~iyildirim/ =
=
http://scholar.google.com/citations?user=O6RQCcwAAAAJ =
---------------------------------------------------------
_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers
Received on Wed Aug 17 2022 - 13:30:05 PDT