Error building 4.0
Hi, I was trying to build kokkos-kernels 4.0.00, but unfortunately it crashes. However, using the same options with version 3.7.01, the build is successful. I've used the following configuration:
- Kokkos [4.0.00]
- Kokkos-kernels [4.0.00]
- CUDA [11.8]
cmake .. -DCMAKE_INSTALL_PREFIX=../cuda_install -DKokkos_ROOT=/opt/kokkos/kokkos/install_cuda -DKokkosKernels_ENABLE_EXAMPLES=ON -DKokkosKernels_ENABLE_PERFTESTS=ON -DKokkosKernels_INST_FLOAT=ON -DKokkosKernels_INST_LAYOUTRIGHT=ON -DKokkosKernels_INST_ORDINAL_INT64_T=ON -DCMAKE_PREFIX_PATH=/opt/kokkos/kokkos/install_cuda/lib/cmake/Kokkos -DCMAKE_CXX_COMPILER=/opt/kokkos/kokkos/bin/nvcc_wrapper
Here are some of the errors related to the rot function:
[ 30%] Building CXX object CMakeFiles/kokkoskernels.dir/blas/eti/generated_specializations_cpp/rot/Blas1_rot_eti_FLOAT_LAYOUTLEFT_EXECSPACE_SERIAL_MEMSPACE_HOSTSPACE.cpp.o
/opt/kokkos/kokkos-kernels/blas/impl/KokkosBlas1_rot_impl.hpp(49): error: argument list for class template "KokkosBlas::Impl::rot_functor" is missing
detected during instantiation of "void KokkosBlas::Impl::Rot<ExecutionSpace, VectorView, ScalarView, false, true>::rot(const ExecutionSpace &, const VectorView &, const VectorView &, const ScalarView &, const ScalarView &) [with ExecutionSpace=Kokkos::Cuda, VectorView=Kokkos::View<float *, Kokkos::LayoutLeft, Kokkos::Device<Kokkos::CudaSpace::execution_space, Kokkos::CudaSpace::memory_space>, Kokkos::MemoryTraits<1U>>, ScalarView=Kokkos::View<float, Kokkos::LayoutLeft, Kokkos::Device<Kokkos::CudaSpace::execution_space, Kokkos::CudaSpace::memory_space>, Kokkos::MemoryTraits<1U>>]"
/opt/kokkos/kokkos-kernels/build/blas/eti/generated_specializations_cpp/rot/Blas1_rot_eti_FLOAT_LAYOUTLEFT_EXECSPACE_CUDA_MEMSPACE_CUDASPACE.cpp(24): here
/opt/kokkos/kokkos-kernels/blas/impl/KokkosBlas1_rot_impl.hpp(50): error: no instance of overloaded function "Kokkos::parallel_for" matches the argument list
argument types are: (const char [16], Kokkos::RangePolicy<Kokkos::Cuda>, <error-type>)
detected during:
instantiation of "void KokkosBlas::Impl::Rot_Invoke(const ExecutionSpace &, const VectorView &, const VectorView &, const ScalarView &, const ScalarView &) [with ExecutionSpace=Kokkos::Cuda, VectorView=Kokkos::View<float *, Kokkos::LayoutLeft, Kokkos::Device<Kokkos::CudaSpace::execution_space, Kokkos::CudaSpace::memory_space>, Kokkos::MemoryTraits<1U>>, ScalarView=Kokkos::View<float, Kokkos::LayoutLeft, Kokkos::Device<Kokkos::CudaSpace::execution_space, Kokkos::CudaSpace::memory_space>, Kokkos::MemoryTraits<1U>>]"
/opt/kokkos/kokkos-kernels/blas/impl/KokkosBlas1_rot_spec.hpp(99): here
instantiation of "void KokkosBlas::Impl::Rot<ExecutionSpace, VectorView, ScalarView, false, true>::rot(const ExecutionSpace &, const VectorView &, const VectorView &, const ScalarView &, const ScalarView &) [with ExecutionSpace=Kokkos::Cuda, VectorView=Kokkos::View<float *, Kokkos::LayoutLeft, Kokkos::Device<Kokkos::CudaSpace::execution_space, Kokkos::CudaSpace::memory_space>, Kokkos::MemoryTraits<1U>>, ScalarView=Kokkos::View<float, Kokkos::LayoutLeft, Kokkos::Device<Kokkos::CudaSpace::execution_space, Kokkos::CudaSpace::memory_space>, Kokkos::MemoryTraits<1U>>]"
I am looking into it, unfortunately I found something unrelated at the moment so I'll fix that first. Hopefully I can reproduce your issue soon!
FYI, I am having a hard time finding an installation of cuda 11.8, but I found a machine with 11.7 so I'll give that a try. Might not have too much progress until later this afternoon...
Still on it but it is taking longer than I hoped.