在实现CUDA代码时,我经常需要一些实用程序函数,这些函数将从设备和主机代码中调用。所以我将这些函数声明为__host__ __device__。如果模板实例调用__host__函数,则会收到以下警告:
calling a __host__ function from a __host__ __device__ function is not allowed一次用于设备,一次用于具有不同名称的主机代码(我不能在__host__
我在我的Cuda代码中有一个C++14模板,它是在lambda闭包上模板化的,是__host__和__device__,我得到了警告: warning: calling a __host__ function")
is not allowed 但这是一个误报,因为调用__host__函数的只是模板的__host__实例化,所以我希望仅对这一个模板定义取消此警告</