4
我想在两个独立的Linux进程(使用POSIX消息队列,我已经设置)之间传递Cuda上下文。是否可以在应用程序之间共享Cuda上下文?
使用cuCtxPopCurrent()
和cuCtxPushCurrent()
,我可以得到上下文指针,但是这个指针在我调用该函数的进程的内存中被引用,并且在进程之间传递它是毫无意义的。
我正在寻找其他解决方案。我的想法至今都:
- 尝试深拷贝
CUcontext
结构,然后通过副本。 - 看看我能否找到一个共享内存解决方案,其中所有的Cuda指针都放在那里,这样两个进程都可以访问它们。
- 将这些进程合并到一个程序中。
- 在Cuda 4.0中,我可以切换到更好的上下文共享。
我不确定选项(1)是否可能,以及(2)是否可用或不可能。 (3)如果我想使事物具有通用性(这是在劫持垫片内),它并不是真正的选择。 (4)我会看看Cuda 4.0,但我不确定它是否能在那里工作。
谢谢!
明白了 - 谢谢!我将不得不弄清楚如何合并我的应用程序,或者有人照顾Cuda电话。 – 2011-05-19 17:07:58