我对CUDA完全是一个“新手”,所以如果我的问题很简单,请原谅。
nvcc是否理解C语言中的inline
关键字?
我了解__forceinline__
和类似的nvcc“宏”,因此我不是在问如何编写inline
cuda设备端代码。
我也知道,我的代码被nvcc和c/c++编译器“分割”(我正在使用Visual Studio IDE)。
这是否意味着当inline
关键字“与”__device__
或__global__
内核“并列”时,nvcc会忽略它?
编辑:
附注:我已经搜索了CUDA编程指南。我在inline
条目下没有找到任何有用的信息,类似的“标签”也没有帮助。
inline
关键字指示实现应优先使用函数内联替换来替代通常的函数调用机制。实现不需要在调用点执行此内联替换;[...]”。nvcc
根据标准接受inline
建议。 - njuffa