CUDA 之FAQ
Posted threepigs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CUDA 之FAQ相关的知识,希望对你有一定的参考价值。
开始学CUDA,一方面可以学点编译器的知识(NVCC),另一方面想通过CUDA更好的了解G80/G92等等,毕竟这比Graphics Pipeline更接近硬件。写这个FAQ,其实也就是通过一点一点的去接近硬件,只是按我的理解,并不一定正确,有错误可以指出讨论。
Q: CUDA为何不支持递归?
A: 由于CUDA的函数调用是stackless的,用inline实现的,所以无法实现递归。据nvidia技术人员称,未来会在local memory
上实现stack,目前由于性能考虑并没有这么样做。
Q: CUDA和display的协调
A: 显卡的CUDA功能和display是可以协同的,和kernel之间的串行执行不同,用于display的存储空间和寄存器空间应该是
和CUDA分离的,所以当display时需要用到shader的时候,可以无overhead和CUDA的warps进行切换。display的优先级大于
kernel,在windows下,kernel的执行如果超过5s,会自动被driver终止,经过测试似乎8-10s后被强制终止。
以上是关于CUDA 之FAQ的主要内容,如果未能解决你的问题,请参考以下文章