Error while "make check" in installing GPU version of GROMACS

GROMACS version: 2022.1
GROMACS modification: No
My workstation has a nvidia RTX A4000 GPU. So I tried compiling the GPU version of GROMACS 2022. I followed the steps prescribed in the installation guide here: Installation guide — GROMACS 5.1.2 documentation. But during the ‘make check’ step, few of the tests fail and I am unable to fix this error even after setting the LB_LIBRARY_PATH environment variable as suggested in other solutions. I have attached the output of ‘nvidia-smi’, the commands i have used, and the error message. Can someone help me find the issue in this case ?

Commands i have used
tar xfz gromacs-5.1.2.tar.gz
cd gromacs-5.1.2
mkdir build
cd build
cmake … -DGMX_BUILD_OWN_FFTW=ON -DREGRESSIONTEST_DOWNLOAD=ON -DGMX_GPU=ON
make
make check

Output of nvidia-smi command
±----------------------------------------------------------------------------+
| NVIDIA-SMI 510.47.03 Driver Version: 510.47.03 CUDA Version: 11.6 |
|-------------------------------±---------------------±---------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA RTX A4000 On | 00000000:9E:00.0 On | Off |
| 41% 35C P8 17W / 140W | 474MiB / 16376MiB | 0% Default |
| | | N/A |
±------------------------------±---------------------±---------------------+

±----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 2058 G /usr/lib/xorg/Xorg 65MiB |
| 0 N/A N/A 2553 G /usr/lib/xorg/Xorg 185MiB |
| 0 N/A N/A 2679 G /usr/bin/gnome-shell 90MiB |
| 0 N/A N/A 97256 G /usr/lib/firefox/firefox 122MiB |
±----------------------------------------------------------------------------+

Error message:
89% tests passed, 10 tests failed out of 88

Label Time Summary:
GTest = 62.39 secproc (81 tests)
IntegrationTest = 17.21 sec
proc (25 tests)
MpiTest = 40.13 secproc (19 tests)
SlowTest = 40.57 sec
proc (13 tests)
UnitTest = 4.61 sec*proc (43 tests)

Total Test time (real) = 116.94 sec

The following tests FAILED:
3 - NbLibListedForcesTests (Child aborted)
6 - NbLibUtilTests (Child aborted)
7 - NbLibSetupTests (Child aborted)
9 - NbLibIntegrationTests (Child aborted)
10 - NbLibIntegratorTests (Child aborted)
16 - MdlibUnitTest (Failed)
25 - DomDecMpiTests (Failed)
26 - EwaldUnitTests (Failed)
27 - FFTUnitTests (Failed)
28 - GpuUtilsUnitTests (Failed)
Errors while running CTest
make[3]: *** [CMakeFiles/run-ctest-nophys.dir/build.make:58: CMakeFiles/run-ctest-nophys] Error 8
make[2]: *** [CMakeFiles/Makefile2:2846: CMakeFiles/run-ctest-nophys.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:2825: CMakeFiles/check.dir/rule] Error 2
make: *** [Makefile:249: check] Error 2

Sorry, I followed the installation guide from Installation guide — GROMACS 2022.1 documentation and not from 5.1.2. Hope this clarifies.

Raghu

Do the tests pass if you run GMX_DISABLE_GPU_DETECTION=1 make check (so tests without GPU). What’s the output if you run bin/gpu_utils-test?

HI,

Thanks! For the " `GMX_DISABLE_GPU_DETECTION=1 make check" I get

89% tests passed, 10 tests failed out of 88

Label Time Summary:
GTest = 64.59 secproc (81 tests)
IntegrationTest = 17.04 sec
proc (25 tests)
MpiTest = 42.03 secproc (19 tests)
SlowTest = 43.07 sec
proc (13 tests)
UnitTest = 4.48 sec*proc (43 tests)

Total Test time (real) = 299.07 sec

The following tests FAILED:
3 - NbLibListedForcesTests (Child aborted)
6 - NbLibUtilTests (Child aborted)
7 - NbLibSetupTests (Child aborted)
9 - NbLibIntegrationTests (Child aborted)
10 - NbLibIntegratorTests (Child aborted)
16 - MdlibUnitTest (Failed)
25 - DomDecMpiTests (Failed)
26 - EwaldUnitTests (Failed)
27 - FFTUnitTests (Failed)
28 - GpuUtilsUnitTests (Failed)
Errors while running CTest
make[3]: *** [CMakeFiles/run-ctest-nophys.dir/build.make:58: CMakeFiles/run-ctest-nophys] Error 8
make[2]: *** [CMakeFiles/Makefile2:2846: CMakeFiles/run-ctest-nophys.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:2825: CMakeFiles/check.dir/rule] Error 2
make: *** [Makefile:249: check] Error 2

And the output for bin/gpu_utils_test is

./gpu_utils-test: symbol lookup error: ./gpu_utils-test: undefined symbol: _ZNK12DeviceStream6streamEv

Raghu

I think your build is broken, try to make a clean build and make sure you don’t have another GROMACS installation or build tree in the path.