我想用nvcc的--ptxas-options = -v标志编译我的cuda程序,以实现寄存器和内存使用,以便在CUDA GPU占用计算器中使用它们。
错误:标识符“atomicAdd”未定义
我在我的内核中使用过atomicAdd。我怎么解决这个问题?
答案 0 :(得分:3)
所有GPU代都不支持原子操作,nvcc的默认目标是sm_10。假设您的GPU支持原子操作(有关GPU支持哪些功能的详细信息,请参阅CUDA C Programming Guide,附录F.1),那么您需要定位该架构,例如:费米和更新的-gencode arch=compute_20,code=\'compute_20,sm_20\'
。有关代码选项的更多信息,请参阅NVCC manual。
--ptxas-options=-v
标志实际上是否会改变行为?如果没有,则您的问题标题会产生误导。