我想知道在CUDA程序中,当一行
myKernel<<<16,4>>>(arg1,arg2);
字符串的情况下。然后会发生什么?CUDA驱动程序被调用,ptx代码被传递给它还是什么?
ax6ht2ek1#
“它只是工作”.只是开玩笑.也许我会得到火张贴这个答案,因为我的知识是不是在这方面的广泛.但这是我可以说:
mykernel<<<...>>>
通过研究驱动程序API中的内核执行,可以获得对内核执行的更多了解。为了简要描述驱动程序API,我可以将其称为比cuda运行时API“更低级别”的API。然而,提到它的目的是,它可以给予一些关于如何将内核启动语法(运行时API)转换为实际上看起来像库调用的C级别API的了解。其他人可能会带着更好/更详细的解释来沿着。
1条答案
按热度按时间ax6ht2ek1#
“它只是工作”.只是开玩笑.也许我会得到火张贴这个答案,因为我的知识是不是在这方面的广泛.但这是我可以说:
mykernel<<<...>>>
(由各种cuda和GPU API库提供服务)。这就是cuda驱动程序在引擎盖下被“调用”的方式。通过研究驱动程序API中的内核执行,可以获得对内核执行的更多了解。为了简要描述驱动程序API,我可以将其称为比cuda运行时API“更低级别”的API。然而,提到它的目的是,它可以给予一些关于如何将内核启动语法(运行时API)转换为实际上看起来像库调用的C级别API的了解。
其他人可能会带着更好/更详细的解释来沿着。