I'm testing a compilation of the 4May17 version of lammps, and am facing the error on the subject. My environment is the following:
OS = centos 7.3
CC, CXX, FC = intel 17.0
MPI = impi 2017.3
CUDA = 8.0
GPUS = 4 pascal P100
I tried to set CUDA_ARCH to "-arch=sm_60" , "-arch=sm_61" and "-arch=sm_62", all give the same error.
I configured the build with the following command:
Using CUDA_ARCH = -arch=sm_60 works fine for me with the GNU compiler. I think in general using the Intel compiler with CUDA is tricky. For more help you need to post your full gpu lib and LAMMPS Makefiles.
I would add that, after you specify CUDA_ARCH = -arch=sm_60 in lib/gpu/Makefile.foo, do
make -f Makefile.foo clean
in lib/gpu, and rebuild libgpu.a with
make -f Makefile.foo -j4
Then in src/, relink the LAMMPS binary to ensure that the binary is linked to the updated libgpu.a.
Finally, double check if the binary is indeed launched on the compute node that has the P100 cards as libgpu.a is just built for.
Hope it helps,
Paths are relative to the initial tarball directory.
Just for the record, the combination of intel 17.0 + cuda 8.0 would probably not work, because the version is not officially supported by nvcc, but thanks anyway for the tips.