我可以使用PTX文件中包含的PTX函数作为外部设备函数来将其链接到另一个应调用该函数的.cu文件吗?

这是来自CUDA - link kernels together的另一个问题,该函数本身未包含在.cu文件中,但是我宁愿以某种方式链接PTX函数。

最佳答案

您可以通过cuModuleLoadcuModuleGetFunction从文件系统中以自己的代码加载包含PTX代码的文件,如下所示:

CUmodule module;
CUfunction function;

const char* module_file = "my_ptx_file.ptx";
const char* kernel_name = "my_kernel_name";

err = cuModuleLoad(&module, module_file);
err = cuModuleGetFunction(&function, module, kernel_name);

您还可以将PTX代码作为字符串直接传递给CUDA驱动程序,请参见Passing the PTX program to the CUDA driver directly

关于c++ - 将内核链接到PTX功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20657004/

10-13 08:30