是否有一个等同于std :: numeric_limits的CUDA?

won*_*ing 8 c++ cuda

我想确定intCUDA内核中的最大值.不幸的是我找不到类似于std::numeric_limitsCUDA的东西.尝试使用该::std函数会导致错误:

error : calling a __host__ function("std::numeric_limits<int> ::max") from a __global__ function("xyz_kernel") is not allowed C:\cuda.cu(153) (col. 10)

有没有办法通过内核确定所需的值,还是应该将其作为参数传递?

mer*_*011 4

它存在,但不像 那样通用std::numeric_limits。请参阅本页的列表。

例如,您可以拥有NPP_MAX_32U,但这特定于类型32-bit unsigned而不是类型int,其宽度取决于系统。