Does CUDA video decoder support multiple GPU?

I’m working on a HD video decoding and present project. Our plan is to plug multiple
CUDA device (display card) into one system and expect one CUDA device for two HD
video decoding. My question is:

  1. Does CUVID support multiple GPU? I can’t find any API to choose CUDA device in
    CUVID.
  2. What is the performance of CUVID? Let’s say 240GT, what is the maximum fps with CUVID?

Anybody can help? Thanks a lot!

Can anybody help?

I’m not an expert on CUVID, but I believe it uses the current CUDA context, so it will support multiple GPUs if you create the contexts on the right GPUs in the usual way.

The performance obviously depends on the codec and resolution. It’s certainly capable of decoding DVD / BluRay streams in real time. On my GTX260 here the sample code decodes a 720p MPEG 2 stream at about 140 fps.

Hope this helps!

Is cuVid available on Linux now? Any plans to support?

Under Linux you can use VAAPI:
http://en.wikipedia.org/wiki/Video_Acceleration_API

I believe this is what the new GPU-accelerated VLC player uses:
http://www.videolan.org/

Thanks a lot.

I made some experiments.

For the performance:

I tried to decode a baseline 1080P movie on GTS250 and GT240, GT220. The result is strange – got about 60fps on GTS250, while 200fps on GT240 and 100fps on GT220.

Is that means the decode ability of VP4 is much much better than VP2?

For the multiple GPU:

When I plug GT240 and GT220 into my system, the decoder failed in initializing. The error message:

cuModuleLoadDataEx error.

modInitCTX<NV12TOARGB_drvapi_32.ptx> initialized failed.