首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nvlink内联设备可以从单独的编译单元运行吗?

nvlink内联设备可以从单独的编译单元运行吗?
EN

Stack Overflow用户
提问于 2018-07-25 12:39:22
回答 1查看 76关注 0票数 0

如果作为输入提供给nvlink的单独编译单元包含cuda内核和设备函数,这些函数调用标记为__forceinline__的设备函数,这些函数会被内联吗?假设如果将所有源代码放入一个文件中,它们将是内联的。

EN

回答 1

Stack Overflow用户

发布于 2018-07-25 15:01:20

如果作为输入提供给nvlink的独立编译单元包含cuda内核和设备函数,这些函数调用标记为__forceinline__的设备函数,这些函数是否会被内联?

据我所知,CUDA设备代码链接器不能做到这一点。__forceinline__指令是一个编译器级别的操作,编译后无法在PTX或SASS中将代码标记为可内联。如果您尝试执行此操作,CUDA设备代码编译器应发出警告,指出已使用但未定义外部内联函数。

如果你想内联编译函数,你必须(毫不奇怪地)使用编译器,而不是链接器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51510909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档