<分区>
将在 GPU 上运行的函数需要限定符 __device__
。我目前正在编写一组通用的数学函数,可以在 GPU 和 CPU 上使用。我认为将所有这些函数限定为 __device__
并不是很好,因为它们也可能包含在其他根本不存在 CUDA 的程序中。有没有办法省略 __device__
?
<分区>
将在 GPU 上运行的函数需要限定符 __device__
。我目前正在编写一组通用的数学函数,可以在 GPU 和 CPU 上使用。我认为将所有这些函数限定为 __device__
并不是很好,因为它们也可能包含在其他根本不存在 CUDA 的程序中。有没有办法省略 __device__
?
最佳答案
在为非 CUDA 目标构建时,您可以只使用 -D__device__=""
进行编译,或者使用可以定义为 __device__
的更通用的宏> 为 CUDA 编译时。
关于c++ - 在 GPU 上调用函数时可以避免使用 __device__ 限定符吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29198631/