Radeon HyperZ In Open-Source On Older Hardware

Written by Michael Larabel in Display Drivers on 20 February 2012 at 01:00 AM EST. Page 1 of 5. 19 Comments.

Recently there has been a lot of talk about Hierarchical-Z/HyperZ support for R600g since its set to provide a measurable performance benefit the open-source Radeon driver for modern GPUs. This support has still not been mainlined and there are still a few issues to work out, but at least the support is stable for the older "R300g" driver and has been around for quite a while at this point. For those wondering what to expect from HiZ/HyperZ performance boosts, here is a preview.


The slides are some old technical marketing material describing HyperZ Technology from the ATI R300 days.

As described in earlier Phoronix articles, Hierchical Z is a method implemented in Radeon hardware (there's a similar HiZ implementation in NVIDIA and Intel graphics processors too) for checking pixels against the z-buffer to see whether they are actually needed. If the given pixel(s) are not needed, they are dumped early on in the rendering pipeline. By dumping them early, it is less work for the graphics processor and provides a savings on memory bandwidth.


Hierarchical Z is one of the components that makes up the ATI/AMD "HyperZ" technology. Besides the Hierarchical Z-buffer there is also Z-buffer compression and fast Z clear. Z-buffer compression compresses the Z-buffer to reduce the needed memory bandwidth. Fast Z clear is just a method for quickly clearing portions of the Z-buffer in an efficient manner. This HyperZ work has been around since the original Radeon R100 days about a decade ago and has been present on all the Radeon GPUs since, with some HyperZ improvements in succeeding generations.


Related Articles