如果作为输入提供给nvlink的单独编译单元包含cuda内核和设备函数,这些函数调用标记为__forceinline__的设备函数,这些函数会被内联吗?假设如果将所有源代码放入一个文件中,它们将是内联的。
发布于 2018-07-25 15:01:20
如果作为输入提供给nvlink的独立编译单元包含cuda内核和设备函数,这些函数调用标记为
__forceinline__的设备函数,这些函数是否会被内联?
据我所知,CUDA设备代码链接器不能做到这一点。__forceinline__指令是一个编译器级别的操作,编译后无法在PTX或SASS中将代码标记为可内联。如果您尝试执行此操作,CUDA设备代码编译器应发出警告,指出已使用但未定义外部内联函数。
如果你想内联编译函数,你必须(毫不奇怪地)使用编译器,而不是链接器。
https://stackoverflow.com/questions/51510909
复制相似问题