首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CUDA ptxas警告(条目的堆栈大小)

CUDA ptxas警告(条目的堆栈大小)
EN

Stack Overflow用户
提问于 2012-03-31 05:23:21
回答 2查看 2.6K关注 0票数 3

在编译CUDA代码时,我收到了以下我不理解的警告:

代码语言:javascript
复制
CUDACOMPILE : ptxas warning : Stack size for entry function
'_Z24gpu_kernel_get_3d_pointsiPK8RtmPointS1_PKfS3_P10RtmPoint3DPif' cannot be statically
determined.

内核原型是:

代码语言:javascript
复制
__global__ void gpu_kernel_get_3d_points(int count1, const RtmPoint *pPoints1,
const RtmPoint *pPoints2, const float *PL, const float *PR, RtmPoint3D *pPoints3D,
int *pGlobalCount, float bbox)

所有指针都是指向设备内存的指针。我不明白为什么编译器在确定堆栈大小时会有问题。内核中有一些局部变量,但并不多。有什么想法吗?这个警告重要吗?

EN

回答 2

Stack Overflow用户

发布于 2016-05-26 05:04:56

当函数是递归的时,会出现此警告。除非您使用递归,否则Cuda会在执行之前尝试分配堆栈空间,这不是什么大问题。它的问题是堆栈大小是不可预测的。递归的深度不是一个已知值,因此堆栈将使用的内存是未知的。此警告并不重要,但如果您的数据超出了GPU堆栈,则必须手动增加堆栈大小。

票数 2
EN

Stack Overflow用户

发布于 2012-12-22 03:55:32

您的内核似乎正在使用malloc()或new运算符在GPU堆上动态分配内存。它可能会对内核的性能产生不利影响。

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

https://stackoverflow.com/questions/9950599

复制
相关文章

相似问题

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