CUDA 2.0 multi threading
Hi,

I've got a multithreading application with the Cuda H264 decoder libaries. The decoder works fine with the NV12toYUV conversion done by CPU. I wanted to add the NV12TORGB (NV12ToARGB_drvapi) conversion from the SDK samples in order to speed up the whole decoding process. I've got a 999 error code on then a 700 error code (CUDA_ERROR_LAUNCH_FAILED) on cuvidMapVideoFrame function call. I suppose there is a possible conflict on multi threading with the H264 library and the fact to load and launch a Cuda module. I use the GTX280 and the last version of the cuda2.0 and last evrsion of driver. I saw Eric Young posted a solution but I can't download it from the forum site - Download error from the server ?

Thanks
Hi,



I've got a multithreading application with the Cuda H264 decoder libaries. The decoder works fine with the NV12toYUV conversion done by CPU. I wanted to add the NV12TORGB (NV12ToARGB_drvapi) conversion from the SDK samples in order to speed up the whole decoding process. I've got a 999 error code on then a 700 error code (CUDA_ERROR_LAUNCH_FAILED) on cuvidMapVideoFrame function call. I suppose there is a possible conflict on multi threading with the H264 library and the fact to load and launch a Cuda module. I use the GTX280 and the last version of the cuda2.0 and last evrsion of driver. I saw Eric Young posted a solution but I can't download it from the forum site - Download error from the server ?



Thanks

#1
Posted 06/29/2009 02:00 PM   
If you're going to crosspost, you should at least check that you're in the right category. The cuda video decoder is not supported in linux.

N.
If you're going to crosspost, you should at least check that you're in the right category. The cuda video decoder is not supported in linux.



N.

#2
Posted 06/29/2009 02:40 PM   
[quote name='Nico' date='29 June 2009 - 09:40 AM' timestamp='1246286409' post='559248']
If you're going to crosspost, you should at least check that you're in the right category. The cuda video decoder is not supported in linux.

N.
[/quote]


So, has this changed? I'm about to test it. Here is an interesting result on CUDA 4.2 for Ubuntu 12.04:

[code]
$ nm -D /usr/lib/libnvcuvid.so.295.40 |grep cuvid
0000000000012180 T cuvidCreateDecoder
000000000000ec60 T cuvidCreateVideoParser
0000000000040f10 T cuvidCreateVideoSource
0000000000040e00 T cuvidCreateVideoSourceW
00000000000120a0 T cuvidCtxLock
0000000000012300 T cuvidCtxLockCreate
0000000000012280 T cuvidCtxLockDestroy
00000000000120d0 T cuvidCtxUnlock
0000000000011f80 T cuvidDecodePicture
0000000000012100 T cuvidDestroyDecoder
000000000000d4c0 T cuvidDestroyVideoParser
00000000000407a0 T cuvidDestroyVideoSource
0000000000040930 T cuvidGetSourceAudioFormat
0000000000040b30 T cuvidGetSourceVideoFormat
0000000000040660 T cuvidGetVideoSourceState
0000000000011fa0 T cuvidMapVideoFrame
0000000000011ff0 T cuvidMapVideoFrame64
000000000000d930 T cuvidParseVideoData
0000000000040600 T cuvidSetVideoSourceState
0000000000012040 T cuvidUnmapVideoFrame
0000000000012060 T cuvidUnmapVideoFrame64
[/code]

It appears that the hooks are now in the Linux library for GPU video decoding via CUDA. Has anyone tested it out?
[quote name='Nico' date='29 June 2009 - 09:40 AM' timestamp='1246286409' post='559248']

If you're going to crosspost, you should at least check that you're in the right category. The cuda video decoder is not supported in linux.



N.







So, has this changed? I'm about to test it. Here is an interesting result on CUDA 4.2 for Ubuntu 12.04:





$ nm -D /usr/lib/libnvcuvid.so.295.40 |grep cuvid

0000000000012180 T cuvidCreateDecoder

000000000000ec60 T cuvidCreateVideoParser

0000000000040f10 T cuvidCreateVideoSource

0000000000040e00 T cuvidCreateVideoSourceW

00000000000120a0 T cuvidCtxLock

0000000000012300 T cuvidCtxLockCreate

0000000000012280 T cuvidCtxLockDestroy

00000000000120d0 T cuvidCtxUnlock

0000000000011f80 T cuvidDecodePicture

0000000000012100 T cuvidDestroyDecoder

000000000000d4c0 T cuvidDestroyVideoParser

00000000000407a0 T cuvidDestroyVideoSource

0000000000040930 T cuvidGetSourceAudioFormat

0000000000040b30 T cuvidGetSourceVideoFormat

0000000000040660 T cuvidGetVideoSourceState

0000000000011fa0 T cuvidMapVideoFrame

0000000000011ff0 T cuvidMapVideoFrame64

000000000000d930 T cuvidParseVideoData

0000000000040600 T cuvidSetVideoSourceState

0000000000012040 T cuvidUnmapVideoFrame

0000000000012060 T cuvidUnmapVideoFrame64




It appears that the hooks are now in the Linux library for GPU video decoding via CUDA. Has anyone tested it out?

#3
Posted 05/03/2012 11:12 AM   
Scroll To Top