CUDA-Enabled Apps: Measuring Mainstream GPU Performance

TMPGEnc Results

For our tests, we typically output the test files into the MPEG-4 AVC main profile, adding both video noise reduction and color correction filters. The one exception was when we output the Get Out! file in high-def without the filters, just to see what it would do to CPU utilization. You can clearly see the GPU taking a lot of the encoding load off the CPU during MPEG-2 output, but this doesn’t necessarily translate into transcoding acceleration. The 9600 GT was actually slower when rendering into MPEG-2 with GPU acceleration enabled. Curious that we see a GPU-assist improvement with the 9800 GTX but not the 9600 GT. 

Back to the AVC encoding. On our 15-second file test, outputting to 1440x1080, we see CUDA giving a 19% benefit on the 9600 GT and a 45% benefit with the 9800 GTX. Here’s an interesting point. TMPGEnc also tells you the split between average CPU and GPU usage during GPU-assisted transcoding. On the 9600 GT, this was about split at 52% GPU and 48% CPU, even though our maximum observed CPU utilization in the Windows Resource Monitor was 95 percent. However, on the 9800 GTX, we saw an 11% CPU and 89% GPU split. This would seem to indicate that the application is making full use of those extra stream processors.

Just to double-check the claims about only filters being accelerated, we also ran the Get Out! clip to 1440x1080 with no filters added and saw just what you’d expect: a slight performance improvement from having GPU assistance enabled but no real speed explosion because CUDA never came into play. Without CUDA, we saw a 92% CPU, 8% GPU split on both cards.

With both filters applied, the Get Out! render had decent results. On the 9600 GT, output times dropped by five minutes with CUDA’s assistance—a 20% gain. With the 9800 GTX, we dropped eight minutes for a 32% improvement.

Honestly, I’d like to see Pegasys making better use of CUDA for encoding than just accelerating filters. Among everyday people, the former gets used a lot more than the latter. But the results here still make the case for CUDA’s potential, even if other applications do a better job of leveraging that potential.

Create a new thread in the US Reviews comments forum about this subject
This thread is closed for comments
56 comments
Comment from the forums
    Your comment
  • SpadeM
    The 8800GS or with the new name 9600GSO goes for 60$ and delivers 96 stream processors. Would it be correct to assume that it would perform betwen the 9600 GT and 9800 GTX you reviewed?

    Other then that great article, been waiting for it since we got a sneak preview from Chris last week.
    1
  • curnel_D
    And I'll never take Nvidia marketing seriously until they either stop singing about CUDA being the holy grail of computing, or this changes: "Aside from Folding@home and SETI@home, every single application on Nvidia’s consumer CUDA list involves video editing and/or transcoding."
    6
  • Anonymous
    As more software will use CUDA, we will not only see a great boost in performance for e.g. video performance, but for parallel programing in general. This sky rocket this business into a new age!
    0
  • curnel_D
    l0bd0nAs more software will use CUDA, we will not only see a great boost in performance for e.g. video performance, but for parallel programing in general. This sky rocket this business into a new age!

    Honestly, I dont think a proprietary language will do this. If anything, it's likely to be GPGPU's in general, run by Open Computing Language.(OpenCL)
    4
  • one-shot
    Are we both thinking about the same "Pirates 2"? Or am I missing something...
    4
  • IzzyCraft
    Who knows it's just a clip he used he could be naming it anything for the hell of it.

    CUDA transcoding is very nice to someone that does H.264 transcoding at a high profile and lacks a 300+ dollar cpu who would spend hours transcoding a dvd on high profile settings.

    Else from that CUDA acceleration has just been more of a feature nothing like a main event. Although can easly be the main attraction to someone that does a good flow of H.264 trasncoding/encoding.

    Encoding/transcoding in h.264 high profile can easily make someone who is very content with their cpu and it's power become sad very quickly when they see the est time for their 30 min clip or something.
    2
  • Anonymous
    I'm using CoreAVC since support was added for CUDA h264 decoding. I kinda feel stupid for buying a high end CPU (at the time) since playing all videos, no matter the resolution or bit-rate, leaves the CPU at near-idle usage.
    Vid card: 8600GTS
    CPU: E6700
    0
  • IzzyCraft
    Well you lucked in considering not all of the geforce 8 series supports H.264 decoding etc.
    0
  • ohim
    they should remove Adobe CS4 suite from there since Cuda transcoding is only posible with nvidia CX videocards not with normal gaming cards wich supports cuda.
    2
  • adbat
    CUDA means Miracle in my language :-) I it will do those
    The sad thing is that ATI does not truly compete in CUDA department and there is not standard for it.
    -2
  • JeanLuc
    I was only really interested in the Badaboom benchmarks and I was fairly impressed but I seem to remember the last time you guys done an article based on GPU accelerated apps (Cuda vs Stream) Badaboom suffered from output quality issues something that hasn't been mentioned in this article. It's all very well a 9800GTX being able to encode HD video content in half the time if the final product is no good.
    0
  • cangelini
    Jean,

    Actually, I don't believe we've done a comparison between the two. However, I have read that comparison at other sites, and it's actually ATI's Stream app that has the quality issues. Version two of the software is on the way, and it purportedly fixes the quality issues (though it still isn't demonstrating much GPU scaling, from what I've seen thus far).
    1
  • ohim
    cangeliniJean,Actually, I don't believe we've done a comparison between the two. However, I have read that comparison at other sites, and it's actually ATI's Stream app that has the quality issues. Version two of the software is on the way, and it purportedly fixes the quality issues (though it still isn't demonstrating much GPU scaling, from what I've seen thus far).
    yeah but chose your words carefouly since readers could be misslead on this one :) the quality of the transcoding is related to the aplication used not to the computing technology like cuda or stream.
    -1
  • Anonymous
    Cangelini, Badaboom definitely has lower quality output compared to the newest x264 builds. I'd definitely like to take advantage of my 9600 GT, but not unless I can use it with Handbrake or some other app on my own terms (NOT BASELINE OR MAIN PROFILE.)
    0
  • stlunatic
    I can haz chezberger?

    ATI

    CUDA

    CONA
    -8
  • randomizer
    SpadeMThe 8800GS or with the new name 9600GSO goes for 60$ and delivers 96 stream processors.

    The 9600GSO has 2 versions (ignoring VRAM variations), one with only 48 SPs (essentially a castrated G94, not G92).
    1
  • Anonymous
    There is a plugin for people who do audio engineering/recording/mixing/mastering from this guy:

    http://www.nilsschneider.de

    It runs on CUDA, but TBH, it has not manifested itself as anything special just yet, it's more a "proof of concept". However, as someone who's been doing that kind of thing for years, any quad-core ever made is good enough for real-time audio work, so there's not much point in CUDA acceleration.
    0
  • jgoette
    Measuing? Do you not even have spellcheck now?
    -5
  • Anonymous
    I enjoyed the article, and just like in the dual-core versus quad core debate, there remains few applications that can fully exploit CUDA.

    By the way, I have quick correction. The author writes, "...that can leverage parallelism in a way that jives with CUDA’s architecture." The correct word is "jibe" not "jive."
    0
  • 1raflo
    CUDA is mostly about hype. Nothing really else.
    -2