我想在两个独立的Linux进程之间传递Cuda上下文(使用我已经设置的POSIX消息队列)。使用cuCtxPopCurrent()和cuCtxPushCurrent(),我可以获取上下文指针,但是该指针是在调用函数的进程的内存中引用的,并且在进程之间进行传递毫无意义。我正在寻找其他解决方案,我的想法如下:
- 尝试深拷贝CUcontext结构,然后传递副本。
- 看看是否能找到共享内存解决方案,在其中放置所有Cuda指针,以便两个进程都可以访问它们。
- 将进程合并为一个程序。
- 可能在Cuda 4.0中有更好的上下文共享方式,我可以切换到该版本。