[Mesa-dev] [PATCH 00/17] i965: Avoid a redundant color buffer fast-clear
Nanley Chery
nanleychery at gmail.com
Wed May 9 16:56:21 UTC 2018
On Tue, May 08, 2018 at 04:59:50PM -0700, Jason Ekstrand wrote:
> I made a small smattering of comments. With those resolved, the series is
>
> Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
>
> I really like the way it all came together in the end. Patch 13 was one I
> didn't expect to like but when I saw it, it completely changed my mind.
> That seems like exactly the right way to do this.
>
Awesome. Thanks!
-Nanley
> --Jason
>
> On Thu, May 3, 2018 at 12:03 PM, Nanley Chery <nanleychery at gmail.com> wrote:
>
> > My main motivation for this series is to avoid one type of redundant
> > fast-clears for color buffers (patch 15). In doing so, I take
> > opportunities to improve the maintainability and performance of the
> > affected code along the way.
> >
> > * Fix bugs that this series depends on for correct behavior (1-2).
> > * Efficient updates to the indirect clear color requires correctly
> > tracking the clear color on the CPU. For correctness, make the initial
> > indirect clear color match the CPU-side one (3-4).
> > * We've been modifying code related to aux buffer allocation thus far.
> > Take this opportunity to remove duplicated code (5-9).
> > * Move the code to update the indirect depth clear color to a unified
> > location to enable the same optimization of skipping an already
> > cleared buffer (regardless of the new value) for color buffers (10-13).
> > * We've been modifying depth clear code thus far. Take this opportunity
> > to delete a stale comment we found here (14).
> > * Now that we correctly track the indirect clear color and updated it as
> > needed, enable the optimization of skipping a fast-clear on an already
> > cleared color buffer, even if the clear color differs from the current
> > one (15).
> > * Now that we update the indirect clear color in the clear color setter,
> > avoid the redundant updates done by BLORP (16-17).
> >
> > -Nanley
> >
> > Nanley Chery (17):
> > i965/miptree: Fix handling of uninitialized MCS buffers
> > i965/miptree: Zero-initialize CCS_D buffers
> > i965/miptree: Move init_mcs into alloc_aux_buffer
> > i965/miptree: Initialize the indirect clear color to zero
> > i965/miptree: Drop the name param from alloc_aux_buffer
> > i965/miptree: Drop the alloc_flags param from alloc_aux_buffer
> > i965/miptree: Drop the mt param from alloc_aux_buffer
> > i965: Prepare to delete intel_miptree_alloc_ccs()
> > i965/miptree: Unify aux buffer allocation
> > Revert "i965: Make the miptree clear color setter take a
> > gl_color_union"
> > i965: Use set_clear_color for depth miptrees
> > i965/clear: Remove an early return in fast_clear_depth
> > i965: Update the indirect buffer in set_clear_color
> > i965/clear: Drop a stale comment in fast_clear_depth
> > i965/blorp: Also skip the fast clear if the clear color differs
> > intel/blorp: Add a NO_UPDATE_CLEAR_COLOR batch flag
> > i965/blorp: Disable BLORP clear color updates
> >
> > src/intel/blorp/blorp.h | 5 +
> > src/intel/blorp/blorp_genX_exec.h | 6 +-
> > src/mesa/drivers/dri/i965/brw_blorp.c | 18 +-
> > src/mesa/drivers/dri/i965/brw_clear.c | 49 +---
> > src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 362
> > +++++++++++---------------
> > src/mesa/drivers/dri/i965/intel_mipmap_tree.h | 18 +-
> > 6 files changed, 181 insertions(+), 277 deletions(-)
> >
> > --
> > 2.16.2
> >
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> >
More information about the mesa-dev
mailing list