[FFmpeg-devel] transcoding on nvidia tesla

christophelorenz christophelorenz
Tue Feb 12 21:44:27 CET 2008


Stefan de Konink wrote:

> I have seen: http://gentoo-wiki.com/TIP_Use_memory_on_video_card_as_swap
>
>
>If this works, it must be possible using a separate kernel module to do
>something like preloading data to the card. The only thing I don't quite
>understand is the 'sharing' part of the data.
>
>Is the CUDA stuff available when the binary driver is not installed?
>  
>
Very interresting idea.
But you can't use CUDA without the nvidia driver.
(It even requires some very specific driver versions to work)
I also think the performance of the access is well below what the gpu 
can do with direct dma.
 From what I experienced, accessing the gpu memory directly is very 
slow, because there's no possible synchronisation with the cpu caches.
(Meaning they are disabled during such a memory access which really hurts)

The only usable path I can see is to offloat some heavy part of the code 
to the gpu.
Also, gpu still runs in parallel with the cpu.
Nothing prevents using the cpu for bitstream parsing and gpu for block 
matching in example.

I don't know how much mutithreaded code there's in ffmpeg, but I guess 
it would require some serious recoding.

Chris.





More information about the ffmpeg-devel mailing list