Regarding CUDA and Gromacs installation

GROMACS version: 2019
GROMACS modification: Yes/No
Here post your question
I have a PC with GPU Nvidia GTX 1080. It has CentOS 7 and I have installed CUDA 11.2 (version). Then started installing Gromacs 2019, by below commands

cd gromacs-2019
mkdir build
cd build
cmake … -DCMAKE_INSTALL_PREFIX=/usr/local/gromacs2019

But when I give make command, I get the following error

vcc fatal : Unsupported gpu architecture ‘compute_30’
CMake Error at libgromacs_generated_nbnxm_cuda.cu.o.Release.cmake:220

Then I gave cmake … -DGMX_CUDA_TARGET_SM=“35;52;60;61;70;75,80”` .

But when I give make check command

I am getting the error shown in image (screenshot attached)


How is solve these errors? and complete Gromacs 2019 installation. Your suggestions and inputs will be of great help to me. Thank you in advance!

The former error you have addressed correctly.

Which GROMACS release are you using? If it is the initial 2019 release, please upgrade to 2019.6.

@pszilard Thank you very much for your reply. I have run MD simulations (50ns) of protein structures in the Gromacs 2019 version. I am planning to extend the simulation duration (to 100ns) for these structures in GPU machine by installing gromacs software.

If I install Gromacs 2019.6 version, Can I extend the simulation which was performed in Gromacs 2019 version?

Yes, minor releases only do bugfixes and minor improvements. Do check the release notes of bugfix releases which document if any bugfix may alter continuation behavior (which generally should not be the case).


Szilárd

@pszilard Thank you very much for your response

Dear sir,

I tried installing 2019.6, but I am getting these error below

[ 42%] Building NVCC (Device) object src/gromacs/CMakeFiles/libgromacs.dir/mdlib/nbnxn_cuda/libgromacs_generated_nbnxn_cuda.cu.o
nvcc fatal : Unsupported gpu architecture ‘compute_30’
CMake Error at libgromacs_generated_nbnxn_cuda.cu.o.Release.cmake:207 (message):
Error generating
/home/yashwanth/Downloads/gromacs 2019.6/build/src/gromacs/CMakeFiles/libgromacs.dir/mdlib/nbnxn_cuda/./libgromacs_generated_nbnxn_cuda.cu.o
make[2]: *** [src/gromacs/CMakeFiles/libgromacs.dir/mdlib/nbnxn_cuda/libgromacs_generated_nbnxn_cuda.cu.o] Error 1
make[1]: *** [src/gromacs/CMakeFiles/libgromacs.dir/all] Error 2
make: *** [all] Error 2

Specifications of PC
OS: CentOS 7 , Graphic card: Nvidia GTX 1080, Cuda version: cuda-11.2.2-1.x86_64

Kindly help me solving these issue, it will be of great help to me

Looking forward to your valuable response 123|690x137

This is a CUDA issue you can work around with by adding -DGMX_CUDA_TARGET_SM="61" to your cmake invocation (also add -DGMX_CUDA_TARGET_COMPUTE="61" to make GROMACS builds it future-proof to newer GPU architectures).

@pszilard Sorry for the delayed response! Thank you very much for your reply

cd gromacs-2019
mkdir build
cd build
cmake … -DGMX_CUDA_TARGET_SM=“61” -DCMAKE_INSTALL_PREFIX=/usr/local/gromacs2019
make
make check
sudo make install
source /usr/local/gromacs/bin/GMXRC

Is my cmake command format correct…? Is it the right way?

Looking forward for your valuable response

Yes, that looks correct. Best way to tell is to check the docs and/or try it.

@pszilard I am very grateful to you! I will try it. Which command in these check the docs
should I execute? Thank you

The documentation section I pointed you at describes among other things the GMX_CUDA_TARGET_SM cmake option I previously suggested. That’s the option you should try.

@pszilard Thank you a lot! for your reply I surely will try these command

Hi! Due to Covid 19 cases, there was a lockdown here, I could not access the systems.

I tried the above command cmake … -DGMX_CUDA_TARGET_SM=“61” -DCMAKE_INSTALL_PREFIX=/usr/local/gromacs2019

But when I give the “make” command I am getting these error ( screenshot attached )
I would be very grateful if you could help me to solve these error and install Gromacs

Looking forward to hearing from you…

Hi,

could this be a typo with the quotation marks? I believe that straight quotes ("61") are required around the value, but your command seems to use curly quotes (“61”).

Regards,
Petter

@pjohansson
Thank you very much for your valuable response, I put straight quotes ( "61" ) it worked

But if I give the command " make check " I am getting the following error ( screenshot attached )
Your suggestions and inputs will be of great help

Looking forward to hearing from you