我试着理解数据自动化系统中的进程间沟通。我想要一些帮助,能够理解这个概念,并试图应用到一个项目,我正在做。
我有一个图像采集系统,提供N个输入图像。首先处理每个原始输入图像,然后将其存储在一个称为“结果”的变量中。图像处理主要有四种功能: Aprocess、Bprocess、Cprocess和Dprocess。每次系统获取新图像时,都调用上述四个功能进行处理。最后的图像“结果”存储在Dprocess中。
我想做的是:创建一个新的进程,'process2',在这个过程中,我可以在每次获得图像时交出一个(最终)存储在“结果”中的图像,并将其放入一个名为“image”的缓冲区中。我想为10张图片做这个。“process2”应该等待一个新的映像被传递给它,而不是终止,因为第一个进程必须继续调用这四个函数并得到一个最终处理的映像。
到目前为止我遇到了什么: cudaIpcGetMemHandle,cudaIpcOpenMemHandle和cudaIpcCloseMemHandle
问题:如何使用上面的函数名来实现IPC?
发布于 2013-11-06 19:47:52
问:如何使用上述函数名来实现IPC?
CUDA simpleIPC示例代码说明了这一点。
还简要介绍了如何在程序编制指南中使用CUDA IPC API。
最后,API本身记录在运行时API 参考手册中。
请注意,此功能需要cc 2.0或更高版本,以及64位Linux操作系统。
https://stackoverflow.com/questions/19819216
复制相似问题