blt_cuda_smoke compiled with default arch
I noticed that blt_cuda_smoke is built with default arch, while most of the code I want to test is built with extra arch flags.
That can lead to a blt_cuda_smoke that works when other exes do not.
This is a BLT usage thing we should make folks aware of.
This is somewhat related, but with CMake 3.21.1, I get a warning regarding the cuda smoke test:
CMake Warning (dev) in cmake/blt/tests/smoke/CMakeLists.txt:
Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
empty CUDA_ARCHITECTURES not allowed. Run "cmake --help-policy CMP0104"
for policy details. Use the cmake_policy command to set the policy and
suppress this warning.
CUDA_ARCHITECTURES is empty for target "blt_cuda_openmp_smoke".
This warning is for project developers. Use -Wno-dev to suppress it.
This is something we should not be setting directly in BLT because it is platform specific. Most projects have this in their generated host-configs:
set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "")
This CMake property was added in CMake 3.18 https://cmake.org/cmake/help/git-stage/variable/CMAKE_CUDA_ARCHITECTURES.html