[Mesa-dev] [PATCH v2 0/7] Add DCC Support.
Marek Olšák
maraeo at gmail.com
Sun Oct 11 17:46:31 PDT 2015
i've reviewed patches 1-4. I'll try to review the rest tomorrow.
Marek
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
> performance.
>
> 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.
>
> v2:
> - 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(-)
>
> --
> 2.5.3
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list