View Full Version : CUDA, OpenCL, DX 11, etc. For the future
saint-francis
30th June 2009, 18:32
There is a lot of talk in the air about GPGPU. Most of it currently seems to be hot air. Some of it is very promising, like DGNVTools. Video decoding seems to be one are where the GPU is useful for us. With the advent of Windows 7 and DX 11 there will supposedly be situations where the OS will use some GPGPU features. There is a lot of banter and plain nonsense from time to time in the forums regarding GPGPU so I figured I'd start this thread for further discussion to take place. It seems definitive that given the current limitations the X264 developers will not be sinking any of their time to squeeze what little they can from a GPU. But we have had FFT3DGPU for quite some time and for what it does it works well. I'm wondering what people's thoughts on this matter are and how people see this progressing in the future.
lucassp
1st July 2009, 11:23
DG NV Tools use only nvcuvid API which lets you access the on-die VP2/3 decoder of nVidia cards. It's NOT a decoder written in pure CUDA. And even if somebody wrote a decoder in CUDA I don't think it's gonna be as efficient as the VP2/3.
Rumors are saying that Tegra uses a low power VP2/3 unit for HD decoding.
leeperry
1st July 2009, 14:47
to me, the problem w/ CUDA and the likes for playback is latency...video frames have to go CPU>GPU>CPU>GPU, which really kills the latency IMO.
at least DXVA was CPU>GPU, so identical timing to software decoding.
I already use Ozone4 in ffdshow and several Avisynth scripts in realtime...and they both add latency :o
for the moment, GPU encoding is illusional anyway...but Aero relies on the GPU for transparency and VSYNC control, if anyone does some serious GP-GPU, it'll be m$ I think.
I hope I'm not too OT :D
saint-francis
2nd July 2009, 15:30
Still, it seems like DGNVtools is working fantastically. We finally have a DGIndexeverything;albeit only for NVidia cards. :(
Will more things like AVS plugins and so on be ported to or developed for the GPU in the future? Is there any benefit or interest in such development?
As for the latency with decoding and CUDA, even DXVA isn't the best option for playback, especially now that we have madvr.
leeperry
2nd July 2009, 20:35
I never tried DXVA as I'm using realtime Avisynth scripts in ffdshow, but CoreAVC CUDA creates too much latency and jitter to my taste. maybe this can be improved, but data HAS to go back and forth between CPU<>GPU and it costs...time.
Guest
2nd July 2009, 22:01
How does this claimed latency actually manifest itself in a negative way?
leeperry
2nd July 2009, 23:26
How does this claimed latency actually manifest itself in a negative way?
by delaying playback. if I disable my Avisynth realtime scripting, my winamp2 plugin and CUDA in CoreAVC...playback starts instantly! each time I enable one of this, it's delayed due to latency :o
turning off CUDA makes files open faster, and CUDA in CoreAVC creates additional jitter in HR. This is a very good indicator of latency/jitter IMO. ffdshow-mt is far tighter over timestamps delivery than CoreAVC CUDA on my system(o/c Q6600 on XP SP3 w/ a G92).
Guest
2nd July 2009, 23:54
How long is startup delayed? You attribute that to a GPU-CPU round trip? Sounds highly dubious to me.
What is "jitter in HR"?
leeperry
3rd July 2009, 01:05
I dunno, maybe a half second? yes, it's definitely delayed because the video frames are going CPU>GPU>CPU>GPU.
the jitter fluctuation in Haali's Renderer OSD, for instance w/ 24fps material in 48.000Hz...jitter is very good w/ ffdshow-mt and a lot more fluctuating w/ CoreAVC CUDA
actually at some point, I was running some pretty old nvidia drivers when updating CoreAVC CUDA, and the jitter was totally unmanageable..it went a lot better after updating the drivers :)
Guest
3rd July 2009, 01:18
I dunno, maybe a half second? yes, it's definitely delayed because the video frames are going CPU>GPU>CPU>GPU. That's absurd. The delay in that path is nowhere near 1/2 second.
Jitter is not the same thing as latency.
leeperry
3rd July 2009, 01:26
of course jitter and latency are 2 different things, where did you read that I said that? I never did.
well, let's say that 3 things add latency on my playback system : 1)CoreAVC CUDA 2)winamp2 plugin in ffdshow audio 3) several Avisynth scripts in ffdshow video
each of these add maybe 200/250ms delay? add them up and I almost have to wait 1 second before playback starts if they're all enabled. ffdshow-mt doesn't add any latency.
CoreAVC CUDA adds *BOTH* latency and high jitter...the frames delivery jitter is far more stable w/ ffdshow-mt.
Guest
3rd July 2009, 02:03
Now you're equivocating. There is no way a GPU-CPU round trip can take 250ms. That's FUD.
leeperry
3rd July 2009, 10:51
ok well, I'm telling you what I see on my system. enabling CUDA in CoreAVC makes my files taking longer to open, and the jitter fluctuation in HR is way worse.
Don't believe me, that's cool! I guess it only matters if you're a Reclock user in 24/48Hz. you're prolly watching movies in 60Hz so you couldn't care less about frames delivery jitter to begin w/ ;)
CUDA in CoreAVC puts the load on the GPU, agreed! but the latency is easy to measure w/ TimeCodec...where you can see that CUDA in CoreAVC doesn't yield much difference, and is very often *worse*!
at some point I was even getting tearing in madVR due to CoreAVC CUDA on original BD content(some other ppl also reported it), disabling CUDA gave smooth playback again(my 8800GS is fully capable of running both simultaneously). latency is never a good thing, no matter what you think :o
saint-francis
3rd July 2009, 13:41
Have you brought this up in the CoreAVC thread? I imagine that this is a bug on their behalf. From reading that thread I get the impression that they are fairly content with the state of CoreAVC CUDA development. If your issues are reproducible across the board I imagine they would like to know about it before they go public with 2.0.
Guest
3rd July 2009, 13:48
latency is never a good thing, no matter what you think :o Don't put words in my mouth. You started by attributing the latency to a GPU-CPU round trip:
CoreAVC CUDA creates too much latency and jitter to my taste. maybe this can be improved, but data HAS to go back and forth between CPU<>GPU and it costs...time. I challenged that notion. That is all.
leeperry
3rd July 2009, 13:51
Have you brought this up in the CoreAVC thread? I imagine that this is a bug on their behalf. From reading that thread I get the impression that they are fairly content with the state of CoreAVC CUDA development. If your issues are reproducible across the board I imagine they would like to know about it before they go public with 2.0.
well..as I see it, latency is by design. CoreAVC CUDA is perfect if you watch movies in 60Hz w/o any post-processing...but as soon as you start using audio/video post-processing, its latency becomes annoying. and if you're a 24/48Hz Reclock user, its jitter becomes very annoying.
I already discussed the issue in the past in their thread, but they never really care about my Reclock/HR problems. what's the % of CoreAVC users swearing by Reclock in 24/48Hz? especially in our 60Hz-only LCD days ;)
leeperry
3rd July 2009, 14:14
I challenged that notion. That is all.
well, maybe it's the handshake then.
when I was using Avishader() in ffdshow w/ this script : http://www.avsforum.com/avs-vb/showthread.php?t=912720
I was experiencing the same sort of latency when opening a new file.
it's easy to measure w/ timecodec anyway, I'm not quite pulling this off my hat :o
Guest
3rd July 2009, 14:21
As I said and you continually refuse to acknowledge, I am not saying that the latency does not exist. I am saying that the amount of latency you cited cannot be due to the GPU-CPU round trip time, as you claimed. And now I ask you to take further debate about it to PM, as it is becoming boring for all of us.
leeperry
3rd July 2009, 14:31
I was merely trying to give you a response you'd like.
case is closed on my end, getting the GPU to do GP-GPU work adds latency & a higher jitter(measurable w/ timecodec)..which can be a problem w/ tight realtime video playback.
lucassp
24th September 2009, 08:04
http://www.anandtech.com/video/showdoc.aspx?i=3643&p=5
It seems that AMD added an SAD function to their new class GPUs.
squid_80
24th September 2009, 10:12
each of these add maybe 200/250ms delay? add them up and I almost have to wait 1 second before playback starts if they're all enabled. ffdshow-mt doesn't add any latency.
That's not latency, that's initialization time for the CUDA decoder.
leeperry
25th September 2009, 03:34
That's not latency, that's initialization time for the CUDA decoder.
any chance making it shorter? and improve the frames delivery jitter too? ah well, I don't think CUDA is a good option for Reclock use...where we need very tight delivery :o
saint-francis
25th September 2009, 17:17
When I started this thread I intended it to be a designated location for people to discuss the place of GPGPU in video related applications. I was tired of people posting and reposting about CUDA encoders in the AVC section and getting all kinds of hell. It has turned into another space for leeperry to gripe about his unattainable desires for a media player that delivers a kind of quality which is practically unnoticeable to human perception. If you are spending so much time agonizing over these minuscule details when do you ever get to time to watch a movie, much less enjoy one? If there is going to be productive discussion here I suggest the thread be closed.
Guest
25th September 2009, 18:16
You asked for people's thoughts and you got them. Stop whining.
leeperry
25th September 2009, 22:27
It has turned into another space for leeperry to gripe about his unattainable desires for a media player that delivers a kind of quality which is practically unnoticeable to human perception. If you are spending so much time agonizing over these minuscule details when do you ever get to time to watch a movie, much less enjoy one?
humm? had a bad day I guess? :D
I enjoy movies all the times, but w/o CUDA.
and I wouldn't call Reclock the "kind of quality which is practically unnoticeable to human perception"....60Hz judder is far from unnoticeable :eek: ...except to blind ppl..
Blue_MiSfit
26th September 2009, 05:21
Some folks are more sensitive to it than others, and some displays make it more obvious than others.
I myself don't mind it much (coming from a 96Hz CRT to a 60Hz LCD wasn't too bad). I'd love to have a 120hz LCD, and be able to output perfect 5x 24p, but I don't and it's not such a huge deal :)
EVR CP with MPC-HC seems to do just fine! QuickTime on the other hand... well.. :p
~MiSfit
BestStarmetter
28th September 2009, 19:56
I was also wondering this. I am thinking of getting a portable hard drive and would like to rip my TV show DVDs and some movies to the hard drive in Divx format. What would be a goodoption? Are there any free options?
Moose
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.