虽然我已经编写了一段时间的 CUDA 内核,但我还没有使用动态并行 (DP)。我遇到了一项我认为可能适合的任务;但是,我希望能够使用 DP 的方式是:
如果 block 发现它需要更多线程来完成它的工作,它就会产生它们;它将“它所知道的”传递给它的衍生线程——本质上,它的共享内存的内容,每个衍生线程块在其自己的共享内存中获得一份副本;线程使用它们的父线程“知道”的东西来确定他们需要继续做什么,然后去做。
但是,AFAICT 不会发生这种共享内存的“继承”。全局内存(和通过内核参数的常量内存)是“父”DP内核块可以将信息传递给其“子”块的唯一方式吗?