I am not aware of any way to share data between processess in OpenGL or CL. I would first try just reading the data back into host memory in a way that you can share with the other process via whatever standard memory sharing options you have on your system. My understanding is that the GL/CL environments are virtualized for each process, so there is no standard/supported/safe way to cross between them. Hopefully someone will correct me if I am wrong. (I don’t know of any way to do this under CL, at any rate.)