|
http://www.pcper.com/article.php?aid=647&type=expert&pid=3
Quick Performance Comparisons
For our performance tests, there are several things that need to be discussed. First, our test bed for each system included an Intel X48 motherboard, 4GB of DDR3-1333 memory, an Intel Core 2 Quad QX9650 processor and a Western Digital 150GB Raptor hard drive. For the NVIDIA Badaboom testing I used a GeForce GTX 260+ 896MB graphics card and for the ATI Avivo Video Converter I used a Radeon HD 4870 1GB card.
Secondly, because these are different applications and there has yet to be one program that will run GPU-accelerated transcoding on both NVIDIA and AMD GPUs, this can never be an exact apples-to-apples comparison. Making it even more complicated is the different amount of control that each application offered: NVIDIA had more discrete control over H.264 encode yet AMD could encoding into many different formats.
To try to be the most fair, our first three benchmarks will look at converting three different source videos into iPod-ready H.264 video running at 780 kbps. I chose that bitrate as it was the highest that AMD's software would allow but it was one of the lower bitrates that NVIDIA's Badaboom offered. Though I cannot be absolutely sure that these conversions bore exactly the same results, I can confirm that the file sizes created were at least reasonably close (within 500 KB) so we are doing the best we can.
For our CPU-based test results I used the very popular Xilisoft iPod Video Converter application to produce nearly the same types of files as the GPU-based encoders.
This first test takes a 1080p Blu-ray HD trailer, already in H.264 format, and converts it to the 480x320 resolution of the iPod touch at 780 kbps. The CPU-based Xilisoft Converter took 72 seconds to complete the operation while the GPU-based applications pulled in MUCH better times: 23 seconds for NVIDIA's Badaboom and 12 seconds for ATI's Avivo Converter. While both GPUs performed well, the ATI application is nearly twice as fast as NVIDIA's program and is 6x faster than the CPU-based encoding process. NVIDIA's Badaboom is 3.1x faster than the CPU encode - still very impressive.
For this benchmark I took a portion of the Star Wars Episode III DVD and encoded it to same specifications and bitrates as the previous test. For those that want to duplicate, I used chapters 1-5 of the first DVD title. While the CPU-based encoder took nearly 5.5 minutes, the ATI Avivo application was able to complete the same job in just 51 seconds - that is more than 6.3x faster! Badaboom was also impressive, coming in at 2.2x faster than the CPU software but was nearly 3x slower than ATI's transcoding application.
Finally, our last iPod converter test takes an 800MB 720p MPEG-2 file and converts it to the same settings as the above two tests. The ATI transcoding application is 4.3x faster than our CPU-based test while the NVIDIA Badaboom program gets the job done 2.6x faster than the CPU alone. This is actually the test with the least difference between ATI and NVIDIA applications - the Badaboom app is only 64% slower than the ATI offering.
This last benchmark takes the same Blu-ray 1080p trailer video we used in the first iPod benchmark but converts it to a 2.5 mbps Windows Media Video file. Because the NVIDIA Badaboom application is unable to transcode to anything other than H.264, it had to sit out this particular test. For the CPU-encoding comparison I used the Microsoft Windows Media Encoder x64 app. The results are just as equally impressive - 5.16x faster on the GPU than the CPU.
UPDATE: CPU Utilization during GPU Encoding
After posting this, I got a request for CPU utilization numbers for both GPU transcoding applications. I aim to please, so here they are:
CPU utilization during ATI Avivo Video Converter operation
CPU utilization during NVIDIA Badaboom operation
These numbers were taken while transcoding the DVD content over to the iPod format shown in our benchmarks above. You can clearly see that while the ATI software is faster, it does require quite a bit more CPU power than the NVIDIA application. What this means is that background transcoding with the ATI software will slow down more easily than the NVIDIA configuration as you add additional workloads to your system. But, is the added performance boost we are seeing from the ATI Avivo application worth this extra CPU utilization? If you are trying to get the transcode operations done as quickly as possible, obviously the answer is still yes. If you want to do other things on your PC while the transcodes take place, maybe not.
Potential Problems?
As most enthusiasts know, speed isn't everything when it comes to video encoding and transcoding. Unfortunately for AMD, while their application was by far the fastest option, I did notice several instances of video garbage when watching the playback of the iPod and WMV encoding files.
Click to Enlarge
If you look here in this shot you'll notice that there are some gray blocks on sleeve of the left-most tuxedo-clad dude, as well as around his leg and, though harder to see, along the stair well too. This seemed to happen during very fast transition times in the video but I never saw anything like this on the Badaboom-encoded files at all.
If this is common, it is definitely something AMD should address if they want to show off high quality results on Radeon 4000-series GPUs.
Initial Thoughts
After spending a few days with both of these applications, I have to say that I impressed overall with what both NVIDIA and ATI have been able to do with GPU-based transcoding. The speed increases seen in both applications are truly astonishing with the obvious win going to AMD's Avivo Video Converter as it was able to beat out Badaboom handily. There is more to be said than raw benchmarks scores though as quality is just as important as speed for video to most people and in that area Badaboom seemed to win out, even when not taking the "garbage" seen in ATI's results into consideration. Some of the quality difference (and thus speed difference) could easily be lent to having non-identical encoding options set in each application. And because neither app gives us full control over what the transcoding engine does we may not be able to get apples-to-apples comparisons until a true third-part application arrives.
I am hesitant to call either application a clear victor yet in this battle - both have pros and cons. If I was forced to choose, I would likely side with AMD's Avivo Video Converter if only because I love the flexibility of being able to address other codecs than H.264 and MPEG-2 and of course the price is right. Quality freaks will likely see the bugs seen in the screenshot above as completely unacceptable and lean towards NVIDIA's Badaboom instead. I guess what I am trying to say is this: if you have a CUDA-capable or 4000-series GPU already in your system, you should definitely try out the respective transcoding applications on your system. If you are in the market for a new GPU, I don't think either application is really a reason to lean heavily one way or the other though both add great value to the GPU platform.
In the end, while I wasn't completely blown away by either Badaboom or the ATI Avivo Video Converter, I was impressed by both. What I am more excited about is how these new programs foretell the future of GPU-based applications - we are already testing Adobe's CS4 capabilities with GPUs and are looking forward to programs from CyberLink and Nero that will let us do even more with the GPU than these two one-sided apps will offer.
Keep checking back to PC Perspective as we will continue to write about our experiences with GPU computing! |
|