[Mesa-dev] [PATCH 2/2] i965/miptree: Use format_ccs_compat_with_miptree for textures

Jason Ekstrand jason at jlekstrand.net
Wed Nov 1 17:58:03 UTC 2017


On Wed, Nov 1, 2017 at 10:46 AM, Nanley Chery <nanleychery at gmail.com> wrote:

> On Tue, Oct 31, 2017 at 08:01:05PM -0700, Jason Ekstrand wrote:
> > This function is a bit more accurate because it lets us sample from sRGB
> > textures if sRGB decode is off.  This should improve performance in
>           ^                                                         ^
>      missing "with CCS_E"?                                       extra
> word?
>

Yup.  Commit message improved:

    Using this function is a bit more accurate because it lets us sample
    from sRGB textures with CCS_E whenever sRGB decode is disabled.  The
    old check for CCS_E compatibility would bail if the miptree's native
    format were sRGB even if the view format is linear.  This should improve
    performance whenever GL_SKIP_DECODE_EXT is used.



>
> > whenever GL_SKIP_DECODE_EXT is used.
> > ---
> >  src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 5 ++---
> >  1 file changed, 2 insertions(+), 3 deletions(-)
> >
> > diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
> b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
> > index 82f5a81..835d7ae 100644
> > --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
> > +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
> > @@ -2566,9 +2566,8 @@ can_texture_with_ccs(struct brw_context *brw,
> >     if (mt->aux_usage != ISL_AUX_USAGE_CCS_E)
> >        return false;
> >
> > -   /* TODO: Replace with format_ccs_e_compat_with_miptree for better
> perf. */
> > -   if (!isl_formats_are_ccs_e_compatible(&brw->screen->devinfo,
> > -                                         mt->surf.format, view_format))
> {
> > +   if (!format_ccs_e_compat_with_miptree(&brw->screen->devinfo,
> > +                                         mt, view_format)) {
> >        perf_debug("Incompatible sampling format (%s) for rbc (%s)\n",
> >                   isl_format_get_layout(view_format)->name,
> >                   _mesa_get_format_name(mt->format));
>
> Do we want to update this perf_debug to return the linear format of the
> miptree
>

I don't know that it matters much since it's just a perf debug.  I think
I'd prefer we leave it as-is because right now it tells us the exact
miptree format not some format calculated from it.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20171101/b94a9cac/attachment-0001.html>


More information about the mesa-dev mailing list