2013-06-04 26 views
0

我需要知道内核函数在什么时间点被添加到GPU队列中。 我做的CUDA程序的ltrace并得到了几个调用像 1.cudaconfigurecall 2.cudamemcpy ,我也得到了cudaLaunch() 我的问题是不特定的内核函数时得到cudaLaunch之前或之后调用或有时加那。 这是负责将内核函数添加到队列的函数。何时将内核函数添加到GPU的队列中?

回答

3

当调用cudaLaunch时,函数被添加。先前的API调用(例如cudaSetupArgumentcudaConfigureCall)预留和初始化为即将到来的内核启动调用堆栈帧,但堆栈帧不会与给定的内核函数关联,并且不会被推送到设备,直到cudaLaunch调用。所有这些函数在CUDA工具包中都有自己的文档,您可以阅读关于它们的文章here