New in 3D graphics processing
As far as we know, in tessellation ATI Radeon HD 5800 series graphic cards yield to its green/black rival. So, what changes have brought AMD “Barts”?
AMD “Barts” uses next generation tessellation engine, in fact, it is the 7th generation for ATI/AMD products:
Tessellation engine history has pretty decent length, thought only due to software support, namely DirectX 11, its intended use was found.
AMD assures the new cards to have twice the tessellation performance compared to previous generation cards. The following graph clearly demonstrates the difference in tessellation performance between AMD Radeon HD 6870 and ATI HD 5870:
Indeed, we can see almost doubled performance increase, but only for small values of tessellation factor (less than ten), followed by a performance dip. The tessellation factor stands for difficulty of DirectX 11 object processing. A clearer presentation of DirectX 11 object processing can be seen on the slide below:
It is clear form the slide, that excessive amount of detail can leads to unnecessary waste of GPU resources. Polygon edges with 16 pixels per clock results it best system performance without affecting the final image. I cannot but agree with AMD — nobody needs polygons edges with 1 pixels. Moreover, it is doubtful that there will be game applications with objects divided to polygons edges with 1 pixels.
The tessellation changes affected not only hardware, namely GPU, but software too. Now, adaptive tessellation is used for pre-processing — the technology allows to neglect the calculations of details in the invisible parts of objects, thus giving providing resources for more detailed rendering of the visible areas of objects.
Yet another innovation AMD “Barts” brought — Morphological Anti-Aliansing (MLAA) post-process filtering technique.
The filter is implemented using DirectCompute technology (It is an application programming interface that supports GPGPU trough DirectX 11. In simple phrase — Microsoft analogue of CUDA technology) with is applied to final image smoothing sharp color transition. In other words, the filtering mechanism examines the frame-buffer and finds “|”, “U”, “L” and “T” shapes inside the final rendered image and applies anti-aliasing to those edges. This is done in Post processing. It can also be combined with other AA techniques.
- the whole image is precessed at once
- the processing is not limited by polygon number
- High processing rates compared to traditional smoothing method
- The filtering technique support all DirectX versions, starting from DirectX 9
The side-effect of the such filtering — little image “blurring”, though the overall look of the image is fine:
By the way, at the time this article was written, some do-it-himself men managed to turn on MLAA filtering in ATI Radeon HD 5000 graphic cards (which is not surprising — cards that support DX11 must also support MLAA, unless the filtering is blocked by the VGA driver):
But wait, there is more — MLAA mechanism was enabled on GeForce GTX 9800+ graphic cards and even on Xbox.
And another change made in rendering in AMD Radeon HD 6800 cards — revised algorithm of anisotropic filtering (AF):
Developers were able to achieve better smoothing of noisy areas, while maintaining the level of performance at the same level. Again, the implementation of the algorithm depends more on the driver that checks if AMD Radeon HD 6000 graphic cards are used.