Video & Movies: The Video Codec Engine, UVD3, & Steady Video 2.0

When Intel introduced the Sandy Bridge architecture one of their big additions was Quick Sync, their name for their hardware H.264 encoder. By combining a specialized fixed function encoder with some GPU-based processing Intel was able to create a small, highly efficient H.264 encoder that had quality that was as good as or better than AMD and NVIDIA’s GPU based encoders that at the same time was 2x to 4x faster and consumed a fraction of the power. Quick Sync made real-time H.264 encoding practical on even low-power devices, and made GPU encoding redundant at the time. AMD of course isn’t one to sit idle, and they have been hard at work at their own implementation of that technology: the Video Codec Engine (VCE).

The introduction of VCE brings up a very interesting point for discussing the organization of AMD. As both a CPU and a GPU company the line between the two divisions and their technologies often blurs, and Fusion has practically made this mandatory. When AMD wants to implement a feature, is it a GPU feature, a CPU feature, or perhaps it’s both? Intel implemented Quick Sync as a CPU company, but does that mean hardware H.264 encoders are a CPU feature? AMD says no. Hardware H.264 encoders are a GPU feature.

As such VCE is being added to the mix from the GPU side, meaning it shows up first here on the Southern Islands series. Fundamentally VCE is very similar to Quick Sync – it’s based on what you can accomplish with the addition of a fixed function encoder – but AMD takes the concept much further to take full advantage of what the compute side of GCN can do. In “Full Mode” VCE behaves exactly like Quick Sync, in which virtually every step of the H.264 encoding process is handled by fixed function hardware. Just like Quick Sync Full Mode is fast and energy efficient. But it doesn’t make significant use of the rest of the GPU.

Hybrid Mode is where AMD takes things a step further, by throwing the compute resources of the GPU back into the mix. In Hybrid Mode only Entropy Encode is handled by fixed function hardware (this being a highly serial process that was ill suited to a GPU) with all the other steps being handled by the flexible hardware of the GPU. The end goal of Hybrid Mode is that as these other steps are well suited to being done on a GPU, Hybrid Mode will be much faster than even the highly optimized fixed function hardware of Full Mode. Full Mode is already faster than real time – Hybrid Mode should be faster yet.

With VCE AMD is also targeting Quick Sync’s weaknesses regardless of the mode used. Quick Sync has limited tuning capabilities which impacts the quality of the resulting encode. AMD is going to offer more tuning capabilities to allow for a wider range of compression quality.  We don’t expect that it will be up to the quality standards of X264 and other pure-software encoders that can generate archival quality encodes, but if AMD is right it should be closer to archival quality than Quick Sync was.

The catch right now is that VCE is so new that we can’t test it. The hardware is there and we’re told it works, but the software support for it is lacking as none of AMD’s partners have added support for it yet. On the positive side this means we’ll be able to test it in-depth once the software is ready as opposed to quickly testing it in time for this review, however the downside is that we cannot comment on the speed or quality at this time. Though with the 7970 not launching until next year, there’s time for software support to be worked out before the first Southern Islands card ever goes on sale.

Moving on, while encoding has been significantly overhauled decoding will remain largely the same. AMD doesn’t refer to the Universal Video Decoder on Tahiti as UVD3, but the specifications match UVD3 as we’ve seen on Cayman so we believe it to be the same decoder. The quality may have been slightly improved as AMD is telling us they’ve scored 200 on HQV 2.0 – the last time we scored them they were at 197 – but HQV is a partially subjective benchmark.

Finally, with Southern Islands AMD is introducing Steady Video 2.0, thesuccessor to Steady Video that was introduced with the Llano APU last year. Steady Video 2.0 adds support for interlaced and letter/pillar boxed content, along with a general increase in the effectiveness of the steadying effect. What makes this particularly interesting is that Steady Video implements a new GCN architecture instruction, Quad Sum of Absolute Differences (QSAD), which combines regular SAD operations with alignment operations into a single instruction. As a result AMD can now execute SADs at a much higher rate so long as they can be organized into QSADs, which is one of the principle reasons that AMD was able to improve Steady Video as it’s a SAD-heavy operation. QSAD extends to more than just Steady Video (AMD noted that it’s also good for other image analysis operations), but Steady Video is going to be the premiere use for it.

Display Tech, Cont: Fast HDMI PCI Express 3.0: More Bandwidth For Compute
Comments Locked

292 Comments

View All Comments

  • RussianSensation - Thursday, December 22, 2011 - link

    I think his comment still stands. In terms of a performance leap, at 925mhz speeds at least, this is the worst improvement from 1 major generation to the next since X1950XTX -->2900XT. Going from 5870 to 6970 is not a full generation, but a refresh. So for someone with an HD5870 who wants 2x the speed increase, this card isn't it yet.
  • jalexoid - Thursday, December 22, 2011 - link

    How's OpenCL on Linux/*BSD? Because I fail to see real high performance use in Windows environments for any GPGPU.

    For GPGPU the biggest target should be still Linux/*BSD because they are the dominating platforms there....
  • R3MF - Thursday, December 22, 2011 - link

    "Among the features added to Graphics Core Next that were explicitly for gaming, the final feature was Partially Resident Textures, which many of you are probably more familiar with in concept as Carmack’s MegaTexture technology."

    Is this feature exclusive to gaming, or is it an extension of a visualised GPU memory feature?

    i.e. if running Blender on the GPU via the cycles renderer will i be able to load scenes larger than local graphics memory?
  • Ryan Smith - Thursday, December 22, 2011 - link

    It's exclusive to graphics. Virtualized GPU memory is a completely different mechanism (even if some of the cache concepts are the same).

    With that said I see no reason it couldn't benefit Blender, but the benefits would be situational. Blender would only benefit in situations where it can't hold the full scene, but can somehow hold the visibly parts of the scene by using tiles.
  • R3MF - Friday, December 23, 2011 - link

    cheers Ryan
  • Finally - Thursday, December 22, 2011 - link

    ...the 2nd generation HD8870 feat. GCN, 3W idle consumption and hopefully less load consumption than my current HD6870. Just let a company like Sapphire add a silent cooler and I'm happy.
  • poohbear - Thursday, December 22, 2011 - link

    Btw why didnt Anandtech overclock this card? it overclocks like a beast according to all the other review sites!
  • Esbornia - Thursday, December 22, 2011 - link

    Cause they want you to think this card sucks come on guys everybody in the internet knows this site sucks for reviews that are not from Intel products.
  • SlyNine - Thursday, December 22, 2011 - link

    lol troll. This site has prefered who ever had the advantage in what ever area. They will do a follow up of its OCing and when they first show a card they show it at stock only.

    I do not OC my videocards, whats the point in adding 5% more gain in games that are running maxed anyways.
  • RussianSensation - Thursday, December 22, 2011 - link

    Is this comment supposed to be taken seriously? Go troll somewhere else.

Log in

Don't have an account? Sign up now