--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/5709c047-21ff-4a8c-9488-e7576aa05a51n%40googlegroups.com.
<kern_frenkel_gpu.py>
Interesting. Thank you for checking. I'm running HOOMD in a conda environment that I have set up withconda create -n hoomdgpu -c conda-forge hoomd=*=*gpu* python=3.8.6 gsd numpy
Is there any way to make that happen with a conda install, by any chance?Best,Irem
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/66ad169d-6f04-4d57-a905-722bf008ffe8n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/CAM-x4o1doDWrkqBvt1mSVt0S3HyQ-dByFTfZS-_xTF7np0-MvQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/C564C74A-F392-43DC-80CA-5BDD0B46F9F9%40umich.edu.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/F623E19B-9C45-4EAB-8B9A-5735FFA4AB57%40gmail.com.
OpenMPI/4.0.5-GCC-10.2.0
Clang/11.0.1-gcccuda-2020b
Python/3.8.6-GCCcore-10.2.0
LLVM/11.0.0-GCCcore-10.2.0
tbb/2020.3-GCCcore-10.2.0
Eigen/3.4.0-GCCcore-10.2.0
Cereal/1.3.2-GCCcore-10.2.0
CUDA/11.1.1-GCC-10.2.0
pybind11/2.6.2-GCCcore-10.2.0
CMake/3.22.1-GCCcore-10.2.0
I am on a GPU node with a 3090Ti card. When I try to configure cmake with:
cmake -B build/hoomd -S hoomd-blue -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_GPU=ON -DENABLE_MPI=ON -DENABLE_MPI_CUDA=ON -DENABLE_TBB=ON -DENABLE_LLVM=ON
I’m getting the following:
-- The C compiler identification is GNU 10.2.0
-- The CXX compiler identification is GNU 10.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /gpfs/loomis/apps/avx/software/GCCcore/10.2.0/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /gpfs/loomis/apps/avx/software/GCCcore/10.2.0/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring HOOMD v3.11.0
-- The CUDA compiler identification is NVIDIA 11.1.105
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Check for working CUDA compiler: /gpfs/loomis/apps/avx/software/CUDAcore/11.1.1/bin/nvcc - skipped
-- Detecting CUDA compile features
-- Detecting CUDA compile features - done
-- Found CUDALibs: /gpfs/loomis/apps/avx/software/CUDAcore/11.1.1/lib/libcudart.so
-- Found MPI_C: /gpfs/loomis/apps/avx/software/OpenMPI/4.0.5-GCC-10.2.0/lib/libmpi.so (found version "3.1")
-- Found MPI_CXX: /gpfs/loomis/apps/avx/software/OpenMPI/4.0.5-GCC-10.2.0/lib/libmpi_cxx.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1")
-- Found cereal: /gpfs/loomis/apps/avx/software/Cereal/1.3.2-GCCcore-10.2.0/lib64/cmake/cereal
-- Found PythonInterp: /home/ia253/project/venv/hoomd/bin/python (found suitable version "3.8.6", minimum required is "3")
-- Found PythonLibs: /gpfs/loomis/apps/avx/software/Python/3.8.6-GCCcore-10.2.0/lib/libpython3.8.so
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- Found pybind11: /gpfs/loomis/apps/avx/software/pybind11/2.6.2-GCCcore-10.2.0/include (found version "2.6.2" )
-- Found pybind11: /gpfs/loomis/apps/avx/software/pybind11/2.6.2-GCCcore-10.2.0/share/cmake/pybind11 /gpfs/loomis/apps/avx/software/pybind11/2.6.2-GCCcore-10.2.0/include (version 2.6.2)
-- Installing hoomd python module to: /home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd
-- Found eigen: /gpfs/loomis/apps/avx/software/Eigen/3.4.0-GCCcore-10.2.0/share/eigen3/cmake /gpfs/loomis/apps/avx/software/Eigen/3.4.0-GCCcore-10.2.0/include (version 3.4.0)
CMake Warning (dev) at CMake/hoomd/hoomd-macros.cmake:55 (find_package):
Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
Run "cmake --help-policy CMP0074" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
Environment variable TBB_ROOT is set to:
/gpfs/loomis/apps/avx/software/tbb/2020.3-GCCcore-10.2.0/
For compatibility, CMake is ignoring the variable.
Call Stack (most recent call first):
hoomd/CMakeLists.txt:308 (find_package_config_first)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Found TBB: /gpfs/loomis/apps/avx/software/tbb/2020.3-GCCcore-10.2.0/lib64/cmake/TBB /gpfs/loomis/apps/avx/software/tbb/2020.3-GCCcore-10.2.0/lib/libtbb.so.2 /vast/palmer/apps/avx.grace/software/tbb/2020.3-GCCcore-10.2.0/include
-- Found LLVM: /gpfs/loomis/apps/avx/software/LLVM/11.0.0-GCCcore-10.2.0/lib64/cmake/llvm llvm_library-NOTFOUND clang_library-NOTFOUND /gpfs/loomis/apps/avx/software/LLVM/11.0.0-GCCcore-10.2.0/include -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS (version 11.0.0)
-- Found plugin: example_plugins/pair_plugin
-- Found plugin: example_plugins/updater_plugin
-- Configuring done
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
clang_library
linked by target "_jit" in directory /home/ia253/hoomd_install_test/hoomd-blue/hoomd/hpmc
llvm_library
linked by target "_jit" in directory /home/ia253/hoomd_install_test/hoomd-blue/hoomd/hpmc
-- Generating done
CMake Generate step failed. Build files cannot be regenerated correctly.
We are not sure why it says llvm_library-NOTFOUND and clang_library-NOTFOUND. We tried pointing to the correct libraries manually, by adding the following options:
-Dllvm_library=/gpfs/loomis/apps/avx/software/LLVM/11.0.0-GCCcore-10.2.0/lib/libLLVMCore.so -Dclang_library=/gpfs/loomis/apps/avx/software/Clang/11.0.1-gcccuda-2020b/lib/libclang.so
It builds and installs fine, but when I try to import the hoomd module, I get a jit error again:
(hoomd) [ia253@p09r07n24 lib]$ python
Python 3.8.6 (default, Feb 17 2021, 19:45:30)
[GCC 10.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hoomd
Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/__init__.py", line 73, in <module>
from hoomd import hpmc
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/__init__.py", line 32, in <module>
from hoomd.hpmc import pair
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/pair/__init__.py", line 11, in <module>
from . import user
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/pair/user.py", line 18, in <module>
from hoomd.hpmc import _jit
ImportError: /home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/_jit.cpython-38-x86_64-linux-gnu.so: undefined symbol: _ZTVN4llvm3opt12InputArgListE
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/9E7D6488-EE82-40DD-9806-4CA254D712E1%40umich.edu.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/7EB070AA-09F0-456F-A13E-FC0571C0331E%40gmail.com.
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_5.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_4.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_3.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_2.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_1.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<output_of_cmake_config.txt>
On Apr 21, 2023, at 9:50 AM, Joshua Anderson <joaa...@umich.edu> wrote:
Irem,
Thanks for the details, the CMake command and output are very helpful to answer your question.
Here is example output from CMake where it successfully finds the LLVM libraries:
-- Found LLVM: /usr/lib/llvm-13/cmake /usr/lib/llvm-13/lib/libLLVM.so /usr/lib/llvm-13/lib/libclang-cpp.so /usr/lib/llvm-13/include -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS (version 13.0.1)
Your output states that it found the LLVM CMake file in `/gpfs/loomis/apps/avx/software/LLVM/11.0.0-GCCcore-10.2.0/lib64/cmake/llvm` (which appears to be the correct place), but that it did not find libLLVM.so or libclang-cpp.so in the library directories given by that cmake file. It would appear that your build of LLVM was configured to not provide these files. HOOMD needs them. Note that libclang-cpp from a `clang` installation is not sufficient as HOOMD also requires the matching header files. When I build LLVM from source, I use the options:
cmake -S llvm -B build \
-D CMAKE_INSTALL_PREFIX=$ROOT -DLLVM_ENABLE_PROJECTS=clang \
-DCLANG_LINK_CLANG_DYLIB=ON \
-DLLVM_BUILD_LLVM_DYLIB=ON \
-DLLVM_LINK_LLVM_DYLIB=ON \
-DCMAKE_BUILD_TYPE=Release
Please let me know if more information is needed.
Best,
Irem
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/325F10C4-2801-4184-B42B-85BCCACBADC6%40umich.edu.
/home/ia253/software/llvm -DLLVM_ENABLE_PROJECTS=clang \-DCLANG_LINK_CLANG_DYLIB=ON \-DLLVM_BUILD_LLVM_DYLIB=ON \-DLLVM_LINK_LLVM_DYLIB=ON \-DCMAKE_BUILD_TYPE=Release
cmake -S llvm -B build -DCMAKE_INSTALL_PREFIX=cmake -S llvm -B build -DCMAKE_INSTALL_PREFIX=
Then I try to do a fresh build of hoomd with:cmake -B build/hoomd -S hoomd-blue -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_GPU=ON -DENABLE_MPI=ON -DENABLE_TBB=ON -DENABLE_LLVM=ON -DLLVM_DIR=/home/ia253/software/llvm/lib/cmake/llvmRuns with two warnings but no errors (see attached — output_of_cmake_config.txt). Then, I try to build with:cmake --build build/hoomd -j16It gets until 84% but then fails with an error with no message (see build_error_1.txt). I then re-run the command to build, which fails at 88% (see build_error_2.txt). Running the command again, it gets to 95% (see build_error_3.txt). Eventually it gets stuck at 100%, but can’t get past a bunch of jit errors (see the other attached files).What am I missing still?Also note that I am loading the same modules, but not the LLVM and Clang modules, and instead pointing cmake towards the one I compiled.Please let me know if more information is needed.Best,Irem
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_5.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_4.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_3.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_2.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<build_error_1.txt>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
<output_of_cmake_config.txt>
On Apr 21, 2023, at 9:50 AM, Joshua Anderson <joaa...@umich.edu> wrote:
Irem,
Thanks for the details, the CMake command and output are very helpful to answer your question.Here is example output from CMake where it successfully finds the LLVM libraries:-- Found LLVM: /usr/lib/llvm-13/cmake /usr/lib/llvm-13/lib/libLLVM.so /usr/lib/llvm-13/lib/libclang-cpp.so /usr/lib/llvm-13/include -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS (version 13.0.1)Your output states that it found the LLVM CMake file in `/gpfs/loomis/apps/avx/software/LLVM/11.0.0-GCCcore-10.2.0/lib64/cmake/llvm` (which appears to be the correct place), but that it did not find libLLVM.so or libclang-cpp.so in the library directories given by that cmake file. It would appear that your build of LLVM was configured to not provide these files. HOOMD needs them. Note that libclang-cpp from a `clang` installation is not sufficient as HOOMD also requires the matching header files. When I build LLVM from source, I use the options:
cmake -S llvm -B build \-D CMAKE_INSTALL_PREFIX=$ROOT -DLLVM_ENABLE_PROJECTS=clang \-DCLANG_LINK_CLANG_DYLIB=ON \-DLLVM_BUILD_LLVM_DYLIB=ON \-DLLVM_LINK_LLVM_DYLIB=ON \-DCMAKE_BUILD_TYPE=Release
Please let me know if more information is needed.Best,Irem
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/325F10C4-2801-4184-B42B-85BCCACBADC6%40umich.edu.
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/A8EDD5F8-3D2B-49FE-B18C-9F3E2F6E405F%40gmail.com.
git clone --branch release/14.x https://github.com/llvm/llvm-project.git
cd llvm
cmake -S llvm -B build -DCMAKE_INSTALL_PREFIX=/home/ia253/software/llvm -DLLVM_ENABLE_PROJECTS=clang -DCLANG_LINK_CLANG_DYLIB=ON -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_LINK_LLVM_DYLIB=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build/
cmake --install build/
git clone --recursive https://github.com/glotzerlab/hoomd-blue
module load OpenMPI/4.0.5-GCC-10.2.0 Python/3.8.6-GCCcore-10.2.0 tbb/2020.3-GCCcore-10.2.0 Eigen/3.4.0-GCCcore-10.2.0 Cereal/1.3.2-GCCcore-10.2.0 CUDA/11.1.1-GCC-10.2.0 pybind11/2.6.2-GCCcore-10.2.0 CMake/3.22.1-GCCcore-10.2.0
source ~/project/venv/hoomd/bin/activate
cmake -B build/hoomd -S hoomd-blue -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_GPU=ON -DENABLE_MPI=ON -DENABLE_TBB=ON -DENABLE_LLVM=ON -DLLVM_DIR=/home/ia253/software/llvm/lib/cmake/llvm
The output of the cmake config is attached. There is one, probably insignificant warning, and both the llvm and clang libraries are found. Then, I build it without errors (see build_output.dat), but a bunch of warnings. However, I still get the jit error when trying to import the module:
(hoomd) [ia253@p09r07n28 ~]$ python
Python 3.8.6 (default, Feb 17 2021, 19:45:30)
[GCC 10.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hoomd
Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/__init__.py", line 73, in <module>
from hoomd import hpmc
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/__init__.py", line 32, in <module>
from hoomd.hpmc import pair
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/pair/__init__.py", line 11, in <module>
from . import user
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/pair/user.py", line 18, in <module>
from hoomd.hpmc import _jit
ImportError: libLLVM-14.so: cannot open shared object file: No such file or directory
I can verify that libLLVM-14.so is indeed produced after my compilation:
(hoomd) [ia253@p09r07n28 lib]$ pwd
/home/ia253/software/llvm/lib
(hoomd) [ia253@p09r07n28 lib]$ ls libLLVM*so
libLLVM-14.0.6.so libLLVM-14.so libLLVM.so
Is it possible that python doesn’t know where to find these libraries? But that should have taken care of when the HOOMD module was being installed, no? I’m also worried that it’s searching for libLLVM-14.so but not libLLVM.so. Am I somehow building two versions simultaneously, and the HOOMD cmake finds the wrong version?
Should I try an even older version of LLVM? I’ve included the command I run to import the other necessary modules above — maybe some of them have the wrong version, or are clashing with the LLVM libraries I built?
I should also note that, every time I try building and installing HOOMD, I delete the cloned repo, build directory, and, if I managed to install, all the files listed in build/hoomd/install_manifest.txt, and start from scratch.
Best,
Irem
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/75A41D6E-7AA8-49CF-8BD8-E5EFBC45FA5B%40gmail.com.
<output_cmake_config.dat>
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/75A41D6E-7AA8-49CF-8BD8-E5EFBC45FA5B%40gmail.com.
<build_output.dat>
On Apr 25, 2023, at 7:40 AM, Joshua Anderson <joaa...@umich.edu> wrote:
Irem,
It would appear that LLVM has changed their API again (they do this regularly). You will need to checkout and build a previous version of LLVM. I currently test with versions 10, 11, 12, 13, and 14. I will make a new release of HOOMD-blue that also supports LLVM 15 at a later time.
Here is a tip: When you encounter an error during make, the relevant error is the *first* error in the output, not the last. "gmake: *** [all] Error 2" only indicates that there was an error previously which you did not include in your build_error files 1, 2, 3, or 4. You only need to run the build step once and report the first error (or batch of errors).------Joshua A. Anderson, Ph.D.Research Area Specialist, Chemical Engineering, University of Michigan
On Apr 24, 2023, at 8:17 PM, Irem Altan <irem....@gmail.com> wrote:
Thank you for the information. I built llvm with the flags you provided:cd llvm-project
cmake -S llvm -B build -DCMAKE_INSTALL_PREFIX=/home/ia253/software/llvm -DLLVM_ENABLE_PROJECTS=clang -DCLANG_LINK_CLANG_DYLIB=ON -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_LINK_LLVM_DYLIB=ON -DCMAKE_BUILD_TYPE=Release
Then I try to do a fresh build of hoomd with:
cmake -B build/hoomd -S hoomd-blue -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_GPU=ON -DENABLE_MPI=ON -DENABLE_TBB=ON -DENABLE_LLVM=ON -DLLVM_DIR=/home/ia253/software/llvm/lib/cmake/llvm
cmake -S llvm -B build \
-D CMAKE_INSTALL_PREFIX=$ROOT -DLLVM_ENABLE_PROJECTS=clang \
-DCLANG_LINK_CLANG_DYLIB=ON \
-DLLVM_BUILD_LLVM_DYLIB=ON \
-DLLVM_LINK_LLVM_DYLIB=ON \
-DCMAKE_BUILD_TYPE=Release
Most LLVM installs, such as those on Ubuntu and conda-forge, provide these headers and libraries. Many HPC cluster modules do not, yours included. You will need to compile a compatible build of LLVM to use it with HOOMD-blue.
Also, I recommend you remove some of the CMake flags you set:
* `-DCMAKE_POSITION_INDEPENDENT_CODE=ON` is not necessary. CMake will automatically add -fPIC to those files that need it and leave it off for those that do not.
* `-DENABLE_MPI_CUDA=ON` will result in incorrect simulations when you run with more than one MPI rank on GPUs.
------
Joshua A. Anderson, Ph.D.
Research Area Specialist, Chemical Engineering, University of Michigan
On Apr 20, 2023, at 9:52 AM, Irem Altan <irem....@gmail.com> wrote:
We have that flag enabled, but it’s still not working. We are having a weird issue where the proper LLVM libraries are not detected. I am trying to do this on an HPC setting, with the HPC staff helping me, but we are running into a problem where cmake looks in the wrong place for the LLVM and clang libraries, and we are not sure which specific library to point it to.
We have the following modules loaded (with versions):
OpenMPI/4.0.5-GCC-10.2.0
Clang/11.0.1-gcccuda-2020b
Python/3.8.6-GCCcore-10.2.0
LLVM/11.0.0-GCCcore-10.2.0
tbb/2020.3-GCCcore-10.2.0
Eigen/3.4.0-GCCcore-10.2.0
Cereal/1.3.2-GCCcore-10.2.0
CUDA/11.1.1-GCC-10.2.0
pybind11/2.6.2-GCCcore-10.2.0
CMake/3.22.1-GCCcore-10.2.0
(hoomd) [ia253@p09r07n24 lib]$ python
Python 3.8.6 (default, Feb 17 2021, 19:45:30)
[GCC 10.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hoomd
Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/__init__.py", line 73, in <module>
from hoomd import hpmc
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/__init__.py", line 32, in <module>
from hoomd.hpmc import pair
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/pair/__init__.py", line 11, in <module>
from . import user
File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/pair/user.py", line 18, in <module>
from hoomd.hpmc import _jit
Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
Traceback (most recent call last):
/home/ia253/software/llvm -DLLVM_ENABLE_PROJECTS=clang \-DCLANG_LINK_CLANG_DYLIB=ON \-DLLVM_BUILD_LLVM_DYLIB=ON \-DLLVM_LINK_LLVM_DYLIB=ON \-DCMAKE_BUILD_TYPE=Release
cmake -S llvm -B build -DCMAKE_INSTALL_PREFIX=cmake -S llvm -B build -DCMAKE_INSTALL_PREFIX=
Then I try to do a fresh build of hoomd with:
cmake -B build/hoomd -S hoomd-blue -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_GPU=ON -DENABLE_MPI=ON -DENABLE_TBB=ON -DENABLE_LLVM=ON -DLLVM_DIR=/home/ia253/software/llvm/lib/cmake/llvm
cmake -S llvm -B build \-D CMAKE_INSTALL_PREFIX=$ROOT -DLLVM_ENABLE_PROJECTS=clang \-DCLANG_LINK_CLANG_DYLIB=ON \-DLLVM_BUILD_LLVM_DYLIB=ON \-DLLVM_LINK_LLVM_DYLIB=ON \-DCMAKE_BUILD_TYPE=Release
Most LLVM installs, such as those on Ubuntu and conda-forge, provide these headers and libraries. Many HPC cluster modules do not, yours included. You will need to compile a compatible build of LLVM to use it with HOOMD-blue.Also, I recommend you remove some of the CMake flags you set:* `-DCMAKE_POSITION_INDEPENDENT_CODE=ON` is not necessary. CMake will automatically add -fPIC to those files that need it and leave it off for those that do not.* `-DENABLE_MPI_CUDA=ON` will result in incorrect simulations when you run with more than one MPI rank on GPUs.
------Joshua A. Anderson, Ph.D.Research Area Specialist, Chemical Engineering, University of Michigan
On Apr 20, 2023, at 9:52 AM, Irem Altan <irem....@gmail.com> wrote:
We have that flag enabled, but it’s still not working. We are having a weird issue where the proper LLVM libraries are not detected. I am trying to do this on an HPC setting, with the HPC staff helping me, but we are running into a problem where cmake looks in the wrong place for the LLVM and clang libraries, and we are not sure which specific library to point it to.We have the following modules loaded (with versions):
OpenMPI/4.0.5-GCC-10.2.0Clang/11.0.1-gcccuda-2020bPython/3.8.6-GCCcore-10.2.0LLVM/11.0.0-GCCcore-10.2.0
tbb/2020.3-GCCcore-10.2.0Eigen/3.4.0-GCCcore-10.2.0Cereal/1.3.2-GCCcore-10.2.0CUDA/11.1.1-GCC-10.2.0pybind11/2.6.2-GCCcore-10.2.0CMake/3.22.1-GCCcore-10.2.0
(hoomd) [ia253@p09r07n24 lib]$ python
Python 3.8.6 (default, Feb 17 2021, 19:45:30)[GCC 10.2.0] on linuxType "help", "copyright", "credits" or "license" for more information.>>> import hoomdIgnoring PCI device with non-16bit domain.Pass --enable-32bits-pci-domain to configure to support such devices(warning: it would break the library ABI, don't enable unless really needed).Traceback (most recent call last):File "<stdin>", line 1, in <module>File "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/__init__.py", line 73, in <module>from hoomd import hpmcFile "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/__init__.py", line 32, in <module>from hoomd.hpmc import pairFile "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/pair/__init__.py", line 11, in <module>from . import userFile "/home/ia253/project/venv/hoomd/lib/python3.8/site-packages/hoomd/hpmc/pair/user.py", line 18, in <module>from hoomd.hpmc import _jit
Ignoring PCI device with non-16bit domain.Pass --enable-32bits-pci-domain to configure to support such devices(warning: it would break the library ABI, don't enable unless really needed).Traceback (most recent call last):
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/F34BC10C-E014-4584-BF92-0D4ACC3647B0%40umich.edu.
--
You received this message because you are subscribed to the Google Groups "hoomd-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hoomd-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hoomd-users/75A41D6E-7AA8-49CF-8BD8-E5EFBC45FA5B%40gmail.com.