TMVA does not work on GPU with ROOT 6.18

Hi ROOT experts,

I just upgraded ROOT from 6.16 to 6.18. I installed ROOT 6.18 with:

/home/testroot/cmake/3.14/bin/cmake -DCMAKE_INSTALL_PREFIX=/home/testroot/root/618 …/root-6.18.00 -DCMAKE_BUILD_TYPE=RELEASE -Dtmva=on -Dcuda=on -Dtestring=on -Droofit=on -Dfftw3=on -Dclad=off -Dfail-on-missing=OFF -Dxrootd=off -Dpython=on -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.1/ -DCUDA_INCLUDE_DIRS=/usr/local/cuda-10.1/include -DCUDA_CUDART_LIBRARY=/usr/local/cuda-10.1/lib -DCUDA_NVCC_EXECUTABLE=/usr/local/cuda-10.1/bin -DCMAKE_CUDA_COMPILER=/usr/local/cuda-10.1/bin/nvcc -DPYTHON_EXECUTABLE=/usr/bin/python2.7 -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 -DPYTHON_LIBRARY=/usr/lib/python2.7/config-x86_64-linux-gnu/libpython2.7.so -Dbuiltin_vdt=on
make -j6 #if find error, use
#cmake --build . – -j6
#make install –j5

With ROOT 6.16, TMVA worked fine on both CPU and GPU, but now I had some problem with ROOT 6.18. I tried to run root-6.18.02/tmva/tmva/test/DNN/CNN/TestMethodDLCNN.cxx, where I changed TString archCPU = "CPU" to TString archCPU = "GPU". But then it said:

: CUDA backend not enabled. Please make sure you have CUDA installed and it was successfully detected by CMAKE by using -Dcuda=On
: Will use now the CPU architecture !

It still worked fine on CPU though.

So can you please give me some idea how to solve this problem? Thanks!

You need to enable -Dtmva-gpu=ON, do you have that enabled?

I tried to enable that and it works now. Thanks for your help!