在CUDA程序中添加功能

时间:2011-08-24 01:10:32

标签: cuda compilation

所以,我认为我有一个非常奇怪的问题。

所以,假设我已经有一个程序放在我的GPU上,在那个程序中我调用了一个函数X.但是函数X还没有被声明。

我希望能够动态地修改该函数X,完全改变代码并将其放入程序中,而无需重新编译其余部分或丢失任何指针。

要将它与我们大多数人都知道的东西进行比较,我希望能够像OpenGL中的着色器一样。在执行过程中,我可以更改一个着色器的代码,只重新编译该着色器,激活程序,现在我使用了这个。

所以,有可能吗?或者我是否需要一直重新编译整个事情。如果我必须重新编译,是否会丢失我在全局内存中创建的各种数组?

由于

w ^

1 个答案:

答案 0 :(得分:1)

如果使用nvcc使用-cuda标志进行编译,则可以获得将PTX流式传输到处理器的中间C ++源代码。理论上,您可以对此中间输出进行后处理,以便动态生成PTX并将其发送出去。你甚至可以让PTX自我修改,但这已经超出了我的联盟。