communication b/w gpus and graphics display

I’m rather new to cuda and using it for a school project. I’m using CUDA to do some calculations on an array. I would simply like to create a fast way to visualize this data by assigning colors to certain values. As I understand it, I can’t directly use OpenGL to visualize this from the GPU because the GPU is stuck in “CUDA mode” for the life of the kernel.

Since I have the 9800 gx2 with 2 GPUs, would it be possible to send the array directly from the first GPU for visualization on the second or would I need to copy the array back to the host and then send it to the GPU again for visualization?

I hope this isn’t worded too poorly.


OpenGL interoperability is definitely possible with CUDA. The GPU can rapidly switch between running your kernel and rendering the data on screen. Take a look at the projects with GL in the name in the CUDA SDK. There are various examples of how to do this.