CUDA之Static关键字

问:

 __global__ static void HelloCUDA(  )与__global__  void HelloCUDA(  )有什么区别吗?static关键字可以放在__global__之前吗?如果可以_global__ static与static _global__ 表达的是同一个意思吧? 


答:

 (1)有区别的。加上了static修饰后将限制符号的作用范围在本文件(以及,对应的目标文件),不会被导出为全局符号的。这可以防止符号污染。

 (2)__global__ static void,和static __global__ void, 和__global__ void static都一样,你如果将kernel放置在多个文件中,那么static修饰的kernel只能从本文件中调用的。不加static的话,开启-rdc=true(设备代码重定位),  可以允许你,例如main函数在一个文件,kernel们在另外一个或者多个文件里。 有的时候这样安排比较清晰。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值