add documentation for including cufft with KOKKOS+CUDA (for conventional build, CMake is automatic)

This commit is contained in:
Axel Kohlmeyer 2020-01-12 21:46:02 -05:00
parent 3784df23f0
commit 15603e0ff7
No known key found for this signature in database
GPG Key ID: D9B44E93BF0C375A
3 changed files with 7 additions and 5 deletions

View File

@ -743,7 +743,7 @@ if(PKG_KSPACE)
else()
message(STATUS "Using non-threaded FFTs")
endif()
if(PKG_KOKKOS AND FFT_CUFFT)
if(PKG_KOKKOS AND KOKKOS_ENABLE_CUDA)
message(STATUS "Kokkos FFT: cuFFT")
endif()
endif()

View File

@ -44,7 +44,7 @@ if(PKG_KOKKOS)
${KOKKOS_PKG_SOURCES_DIR}/remap_kokkos.cpp)
if(KOKKOS_ENABLE_CUDA)
add_definitions(-DFFT_CUFFT)
list(APPEND LAMMPS_LINK_LIBS -lcufft)
list(APPEND LAMMPS_LINK_LIBS cufft)
endif()
endif()

View File

@ -350,10 +350,12 @@ For NVIDIA GPUs using CUDA:
KOKKOS_DEVICES = Cuda
KOKKOS_ARCH = archCPU,archGPU # archCPU = CPU from list above that is hosting the GPU
# archGPU = GPU from list above
FFT_INC = -DFFT_CUFFT # enable use of cuFFT (optional)
FFT_LIB = -lcufft # link to cuFFT library
For GPUs, you also need these 2 lines in your Makefile.machine before
the CC line is defined, in this case for use with OpenMPI mpicxx. The
2 lines define a nvcc wrapper compiler, which will use nvcc for
For GPUs, you also need the following 2 lines in your Makefile.machine
before the CC line is defined, in this case for use with OpenMPI mpicxx.
The 2 lines define a nvcc wrapper compiler, which will use nvcc for
compiling CUDA files and use a C++ compiler for non-Kokkos, non-CUDA
files.