Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Subject: Help with AutoDock-GPU installation – CUDA Verification Failed #275

Open
khandokaryogesh opened this issue Sep 25, 2024 · 2 comments

Comments

@khandokaryogesh
Copy link

khandokaryogesh commented Sep 25, 2024

Hello,

I am new to molecular docking and currently trying to install and run AutoDock-GPU on my Ubuntu system. While following the installation instructions for AutoDock-GPU, I encountered an issue when running the make DEVICE=CUDA command. Here is the error I get
Using Cuda 12.0
Compiling for targets: 52 53 60 61 62 70 72 75 80 86 87 89 90
Makefile:34: *** Cuda verification failed. Stop.

have installed CUDA 12.6, and I have verified that the necessary CUDA libraries and header files are present in the system. My GPU is an NVIDIA L40S, and nvidia-smi reports the following:

Driver Version: 560.35.03
CUDA Version: 12.6

I have set the following environment variables:

export GPU_INCLUDE_PATH=/usr/local/cuda/include
export GPU_LIBRARY_PATH=/usr/local/cuda/lib64
Despite this setup, the CUDA verification step fails, preventing the compilation of AutoDock-GPU. Could you please guide me on how to resolve this issue or identify what might be going wrong?

Any help would be greatly appreciated!

@rwxayheee
Copy link
Collaborator

rwxayheee commented Sep 26, 2024

Hi @khandokaryogesh
If you haven't changed Makefile:

AutoDock-GPU/Makefile

Lines 29 to 34 in 2e658c3

ifeq ($(DEVICE), $(filter $(DEVICE),GPU CUDA))
TARGETS_SUPPORTED := $(shell ./test_cuda.sh nvcc "$(GPU_INCLUDE_PATH)" "$(GPU_LIBRARY_PATH)" "$(TARGETS)" "$(DEVICE)")
# if user specifies DEVICE=GPU the test result determines wether CUDA will be used or not
ifeq ($(TARGETS_SUPPORTED),)
ifeq ($(DEVICE),CUDA)
$(error Cuda verification failed)

Based on the output you got, you were able to locate nvcc (which indicates version 12.0, not 12.6; this is likely a nvcc in your PATH but not the one you wanted) but the target numbers were not printed. It's very likely that the test executable (test_cuda) were not compiled successfully by:

$1 -I$2 -L$3 -lcuda -lcudart -o test_cuda test_cuda.cpp &> /dev/null

(which is nvcc -I$GPU_INCLUDE_PATH -L#GPU_LIBRARY_PATH -lcuda -lcudart -o test_cuda test_cuda.cpp)

I have only tested up to CUDA 12.4. I also never tested the driver version or on NVIDIA L40S. Not very sure what went wrong with the compilation of test codes, but it might be helpful to run nvcc -I$GPU_INCLUDE_PATH -L$GPU_LIBRARY_PATH -lcuda -lcudart -o test_cuda test_cuda.cpp, without &> /dev/null, to see the standard output and errors. Also, if you want to use CUDA 12.6, make sure you have the right nvcc in PATH.

@atillack
Copy link
Member

@khandokaryogesh I agree with @rwxayheee, this is likely a case of nvcc in your path being different from the directories used. Please post the output of the test compilation nvcc -I$GPU_INCLUDE_PATH -L$GPU_LIBRARY_PATH -lcuda -lcudart -o test_cuda test_cuda.cpp.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants