23 throw std::runtime_error(
"CUDAfill_n doesn't support fill non T() values!");
34 template void CUDAfill_n<std::complex<float>>(std::complex<float>* ptr,
size_t n,
const std::complex<float>& value);
35 template void CUDAfill_n<std::complex<double>>(std::complex<double>* ptr,
size_t n,
const std::complex<double>& value);
helper functions for EinsplineSetBuilder
handle CUDA/HIP runtime selection.
template void CUDAfill_n< double >(double *ptr, size_t n, const double &value)
template void CUDAfill_n< float >(float *ptr, size_t n, const float &value)
template void CUDAfill_n< size_t >(size_t *ptr, size_t n, const size_t &value)
cudaErrorCheck(cudaMemcpyAsync(dev_lu.data(), lu.data(), sizeof(decltype(lu)::value_type) *lu.size(), cudaMemcpyHostToDevice, hstream), "cudaMemcpyAsync failed copying log_values to device")
void CUDAfill_n(T *ptr, size_t n, const T &value)
fill device memory with a given value.
template void CUDAfill_n< int >(int *ptr, size_t n, const int &value)