Another New Anti-Aliasing Mode: Enhanced Quality AA

With the 6800 series AMD introduced Morphological Anti-Aliasing (MLAA), a low-complexity post-processing anti-aliasing filter. As a post-processing filter it worked with a wide variety of games and APIs, and in most cases the performance overhead was not very severe. However it’s not the only new anti-aliasing mode that AMD has been working on.

New with the 6900 series is a mode AMD is calling Enhanced Quality Anti-Aliasing. If you recall NVIDIA’s Coverage Sample Anti-Aliasing (CSAA) introduced with the GeForce 8800GTX, then all of this should sound quite familiar – in fact it’s basically the same thing.

Under traditional MSAA, for a pixel covered by 2 or more triangles/fragments, 2, 4, or 8 subpixel samples are taken to determine what the final pixel should be. In the process the color of the triangle and the Z/depth of the triangle are both sampled and stored, and at the end of the process the results are blended together to determine the final pixel value. This process works well for resolving aliasing along polygon edges at a fraction of the cost of true super sampling, but it’s still expensive. Collecting and storing the Z and color values requires extra memory to store the values and extra memory bandwidth to work with the values. Ultimately while we need enough samples to determine colors of the involved triangles, we do not always need a great deal of them. With a few color/Z samples we have all of the color data we need in most cases, however the “hard” part of anti-aliasing becomes what the proper blending of color values should be.


1 Pixel Covred by 2 Triangles/Fragments

Thus we have EQAA, a compromise on the idea. Color/Z samples are expensive, but just checking if a triangle covers part of a subpixel is very cheap. If we have enough color/Z samples to get the necessary color information, then just doing additional simple subpixel coverage checks would allow us better determine what percentage of a pixel is covered by a given polygon, which we can then use to blend colors in a more accurate fashion. For example with 4x MSAA we can only determine if a pixel is 0/25/50/75/100 percent covered by a triangle, but with 4x EQAA where we take 4 color samples and then 4 additional coverage-only samples, we can determine blending values down to 0/12/25/37/50/62/75/87/100 percent coverage, the same amount of accuracy as using 8x MSAA. Thus in the right situation we can have quality similar to 8x MSAA for only a little over 4x MSAA’s cost.


MSAA & EQAA Sample Patterns

In reality of course this doesn’t always work out as well. The best case scenario is that the additional coverage samples are almost as good as having additional color/Z samples, while the worst case scenario is that additional coverage samples are practically worthless. This depends on a game-by-game, if not pixel-by-pixel basis. In practice additional coverage samples are a way to slightly improve MSAA quality for a very, very low cost.

While NVIDIA has had the ability to take separate coverage samples since G80, AMD has not had this ability until now. With the 6900 hardware their ROPs finally gain this ability.

Beyond that, AMD and NVIDIA’s implementations are nearly identical except for the naming convention. Both can take a number of coverage samples independent of the color/Z samples based on the setting used; the only notable difference we’re aware of is that like AMD’s other AA modes, their EQAA mode can be programmed to use a custom sample pattern.

As is the case with NVIDIA’s CSAA, AMD’s EQAA mode is available to DirectX applications or can be forced through the drivers. DirectX applications can set it through the Multisample Quality attribute, which is usually abstracted to list the vendor’s name for the mode in a game’s UI. Otherwise it can be forced via the Catalyst Control Center, either by forcing an AA mode, or as is the case with NVIDIA, enhancing the AA mode by letting the game set the AA mode while the driver overrides the game and specifies different Multisample Quality attribute. Thus the “enhance application settings” AA mode is new to AMD with the 6900 series.

To be honest we’re a bit ruffled by the naming choice. True, NVIDIA did go and have to pick daft names for their CSAA modes (when is 8x not 8 sample MSAA?), but ultimately CSAA and EQAA are virtually identical. NVIDIA has a 4 year lead on AMD here, and we’d just as well use NVIDIA’s naming conventions for consistency. Instead we have the following.

Coverage Sampling Modes: CSAA vs EQAA
NVIDIA Mode
(Color + Coverage)
AMD
2x 2+0 2x
N/A 2+2 2xEQ
4x 4+0 4x
8x 4+4 4xEQ
16x 4+12 N/A
8xQ 8+0 8x
16xQ 8+8 8xEQ
32x 8+24 N/A

AMD ends up having 1 mode NVIDIA doesn’t, 2xEQ, which is 2x MSAA + 2x cover samples; meanwhile NVIDIA has 16x (4x MSAA + 12 cover samples) and 32x (8x MSAA + 24 cover samples). Finally, as we’ll see, just as is the case for NVIDIA additional coverage samples are equally cheap for AMD.

Tweaking PowerTune Meet the 6970 & 6950
POST A COMMENT

167 Comments

View All Comments

  • Roland00Address - Wednesday, December 15, 2010 - link

    1) The architecture article is something that can be written before hand, or written during benching (if the bench is on a loop). It has very little "cramming" to get out right after a NDA ends. Anand knows this info for a couple of weeks but can't discuss it due to NDAs. Furthermore the reason anandtech is one of the best review sites on the net is the fact they do go into the architecture details. The architecture as well as the performance benchmarks is the reason I come to anandtech instead of other review sites as my first choice.

    2) The spelling and grammar errors is a common thing at anandtech, this is nothing new. That said I can't complain for my spelling and grammar is far worse than Ryan's.

    If you don't like the style of the review go somewhere else.
    Reply
  • Ryan Smith - Wednesday, December 15, 2010 - link

    1) That's only half true. AMD told us the basics about the 6900 series back in October, but I never had full access to the product information (and more importantly the developers) until 1 week ago. So this entire article was brought up from scratch in 1 week.

    It's rare for us to get too much access much earlier than that; the closest thing was the Fermi launch where NVIDIA was willing to talk about the architecture months in advance. Otherwise that's usually a closely held secret in order to keep the competition from having concrete details too soon.
    Reply
  • Dracusis - Wednesday, December 15, 2010 - link

    Neither the AMD 6xxx series or Nvidia's 5xx series have been added. Would like to see how my 4870x2 stack up against this latest generation and weather or not it's worth upgrading. Reply
  • Makaveli - Wednesday, December 15, 2010 - link

    The Canadian pricing on these cards are hilarious.

    Ncix is taking preorder for the 6970 at $474.

    While they sell the 570 for $379.

    Can someone explain to me why I would pay $100 more for the radeon when the 570 gives equal performance?

    Are these retailers that retarded?
    Reply
  • stangflyer - Thursday, December 16, 2010 - link

    They will price the 6950/6970 high for a few days to get the boys that bleed red and have to have the new cards right away to pay top dollar for the card.

    After a week they will probably be about the same price.
    Reply
  • Ryan Smith - Thursday, December 16, 2010 - link

    Bench will be up to date by the start of next week. Reply
  • Paladin1211 - Thursday, December 16, 2010 - link

    Whats wrong with you rarson? Do you even know whats the difference between "Graphics card review", "Performance review", "Performance Preview"? I dont know how good your grammar and spelling are, but they dont matter as long as you cant understand the basic meaning of the words.

    Most of the sites will tell you about WHAT, but here at AnandTech, you'll truly find out WHY and HOW. Well, of course, you can always go elsewhere try to read some numbers instead of words.

    Keep up the good works, Ryan.
    Reply
  • Belard - Thursday, December 16, 2010 - link

    The 3870 and 3850 were the TOP end for ATI, as was the 4800 and the 5800. Their relationship of model numbers do not have anything to do with the status of Nvidia.

    When the 3870 was brand new, what was the HIGHEST end card ATI had back then? Oh yeah, the 3870!

    4800 is over the 3870, easily.
    4600 replaced the 3800

    The 5800s replaces the 4800s... easily.
    the 5700s kind of replaced the 4800s.

    The 6800s replaces the 5700 & 5800s, the 6900s replace the 5800s, but not so much on performance.

    I paid $90 for my 4670 and a much better value than the $220 3870 since both cards perform almost the same.
    Reply
  • AmdInside - Thursday, December 16, 2010 - link

    I can't think of a single website that has better hardware reviews, at least for computer technology than Anandtech. Ryan, keep up the great work. Reply
  • George.Zhang - Thursday, December 16, 2010 - link

    BTW, HD6950 looks great and affordable for me. Reply

Log in

Don't have an account? Sign up now