Transferring frame data for TV input Need to process many frames of TV data

We are considering using CUDA to peform real-time image processing on video data, and need to decide what hardware we need to do this.

We need to be able to process frames from TV cameras at the following resolutions
and frame rates:

(i) 640 x 480 at 200 fps , 1 byte per pixel (greyscale intensity)
(ii) 1392 x 480 at 75 fps, 1 byte per pixel (greyscale intensity)

It is clear that CUDA will be able to process this amount of data on a suitable GPU but we don’t yet know whether we will be able to transfer data at this rate to the
video memory, and if so what hardware we will need to purchase to achieve this.

There are quite a few posts of people reporting speed of host->device and device->host transfers.

640480200/1024/1024 = 58.5938 MB/s

139248075/1024/1024 = 47.7905 MB/s

The minimum reported speeds for PCI-Express v1 are in excess of 1 GB/s

These should be no problem at all, transfer rate-wise. Just read the data from your video capture device into a memory-pinned buffer allocated using cudaHostAlloc(), then start the transfer and launch processing kernels.