How to display results directly

We are doing some long calculations which are stored in a 1024x1024 array of floats that resides on the device. THis array is continuoulsly updated by the calculations and we periodically ship back the data from the device to the host to keep a history of the evolution. Host communications are of course relatively expensive.

Is it possible to periodically dump the array to screen as an image, without communicating with the host?

Any help, pointers, suggestions are appreciated.

If it is important we have 2 8800 GTXs, CUDA 0.8, Windows XP-Pro. One of the GTX’s is hooked up to the screen (and has the 5 second bug mentioned in the release notes … perhaps this periodic dumping to screen would also allow us to work around that bug)

See the simpleGL example for how to bind a PBO buffer to be used by CUDA. Just use it as a texture source instead. This will do a copy in GPU memory instead of reading to the host. There is an image post-processing example by Simon somewhere on the board also.

added: ah, for the results from your second card however you cannot get around the host copy.