Comunicação Interprocessual CUDA

Eu estou tentando entender a comunicação entre processos em CUDA. Eu gostaria de alguma ajuda para entender este conceito e tentar aplicar isso em um projeto que estou fazendo.

Eu tenho um sistema de aquisição de imagem que fornece o número N de imagens de entrada. Cada imagem de entrada bruta é processada primeiro e, em seguida, armazenada em uma única variável chamada 'Resultado'. Existem quatro funções que fazem o processamento da imagem, Aprocess, Bprocess, Cprocess e Dprocess. Cada vez que uma nova imagem é adquirida pelo sistema, as quatro funções mencionadas acima são chamadas para fazer o processamento. A imagem final 'Result' é armazenada em Dprocess.

O que eu gostaria de fazer é: Crie um novo processo, 'process2', onde posso entregar uma imagem (final) armazenada em 'Resultado', cada vez que a imagem é obtida, e coloque-a em um buffer chamado 'Imagens'. Eu gostaria de fazer isso por 10 imagens. 'process2' deve esperar que uma nova imagem seja passada para ela e não terminar porque o primeiro processo tem que continuar chamando as quatro funções e obter uma imagem final processada.

O que eu me deparei até agora: cudaIpcGetMemHandle, cudaIpcOpenMemHandle e cudaIpcCloseMemHandle

Questão: Como faço para usar os nomes das funções acima para alcançar o IPC?