[Mesa-dev] [PATCH v2 0/7] Add DCC Support.
maraeo at gmail.com
Mon Oct 12 07:32:56 PDT 2015
Patches 5-7 reviewed as well.
On Mon, Oct 12, 2015 at 2:46 AM, Marek Olšák <maraeo at gmail.com> wrote:
> i've reviewed patches 1-4. I'll try to review the rest tomorrow.
> On Sun, Oct 11, 2015 at 5:38 PM, Bas Nieuwenhuizen
> <bas at basnieuwenhuizen.nl> wrote:
>> These patches enable delta color compression (DCC) for Vulcanic
>> Islands GPU's. This should reduce memory bandwidth to increase
>> In this second version I reworked the fast clear not to use the CMASK
>> for DCC compressed textures, as well as allowing integer formats.
>> With the reworked fast clear and shader based resolves, DCC compressed
>> MSAA textures became slower than non-DCC compressed textures. Therefore
>> I disabled DCC for MSAA textures.
>> Finally, I made the compression tracking supported optional as it is
>> currently not needed. This involves the last 2 patches of this series.
>> Besides the MSAA textures I have not found a significant performance
>> difference compared to the first version.
>> - Rework fast clear not to use CMASK clear.
>> - Rework cache flushes.
>> - Drop MSAA support.
>> - Remove unsupported KEY_CLEAR_ENABLE flag.
>> - Use shader MSAA resolve if the destination is DCC compressed.
>> - Only set ALPHA_IS_ON_MSB when needed.
>> - Rework compression tracking and decompress to be optional.
>> Bas Nieuwenhuizen (7):
>> radeonsi: Allocate buffers for DCC.
>> radeonsi: Disable operations that do not work with DCC.
>> radeonsi: Add a CACHE_FLUSH event
>> radeonsi: Enable DCC.
>> radeonsi: Implement DCC fast clear.
>> radeonsi: Add DCC decompress.
>> radeonsi: Add DCC compression tracking machinery.
>> src/gallium/drivers/radeon/r600_buffer_common.c | 21 ++++++
>> src/gallium/drivers/radeon/r600_pipe_common.h | 8 ++
>> src/gallium/drivers/radeon/r600_texture.c | 98 +++++++++++++++++++++++--
>> src/gallium/drivers/radeon/r600d_common.h | 1 +
>> src/gallium/drivers/radeon/radeon_winsys.h | 5 ++
>> src/gallium/drivers/radeonsi/cik_sdma.c | 3 +-
>> src/gallium/drivers/radeonsi/si_blit.c | 41 +++++++----
>> src/gallium/drivers/radeonsi/si_cp_dma.c | 3 +-
>> src/gallium/drivers/radeonsi/si_descriptors.c | 7 +-
>> src/gallium/drivers/radeonsi/si_dma.c | 3 +-
>> src/gallium/drivers/radeonsi/si_pipe.c | 2 +
>> src/gallium/drivers/radeonsi/si_pipe.h | 4 +
>> src/gallium/drivers/radeonsi/si_state.c | 50 +++++++++++--
>> src/gallium/drivers/radeonsi/si_state_draw.c | 17 +++++
>> src/gallium/drivers/radeonsi/sid.h | 1 +
>> src/gallium/winsys/amdgpu/drm/amdgpu_surface.c | 47 ++++++++++--
>> 16 files changed, 275 insertions(+), 36 deletions(-)
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
More information about the mesa-dev