On Saturday, February 07, 2015 02:46:31 AM Francisco Jerez wrote: > Kenneth Graunke <kenn...@whitecape.org> writes: > > > On Friday, February 06, 2015 07:23:15 PM Francisco Jerez wrote: > >> It doesn't really improve locality of texture fetches, quite the > >> opposite it's a waste of memory bandwidth and space due to tile > >> alignment. > >> --- > >> src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 4 ++++ > >> 1 file changed, 4 insertions(+) > >> > >> diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > >> b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > >> index 64752dd..311b204 100644 > >> --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > >> +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > >> @@ -488,6 +488,10 @@ intel_miptree_choose_tiling(struct brw_context *brw, > >> base_format == GL_DEPTH_STENCIL_EXT) > >> return I915_TILING_Y; > >> > >> + if (mt->target == GL_TEXTURE_1D || > >> + mt->target == GL_TEXTURE_1D_ARRAY) > >> + return I915_TILING_NONE; > >> + > >> int minimum_pitch = mt->total_width * mt->cpp; > >> > >> /* If the width is much smaller than a tile, don't bother tiling. */ > >> > > > > What do you think about checking mt->logical_height0 == 1 instead? > > GLES doesn't have 1D textures, but people might use a 2D texture with > > height 1, and I think the same logic applies. > > > > I've also been thinking of trying to make core Mesa hide 1D textures and > > simply turn them into 2D textures with height = 1, so drivers don't have > > to deal with them. > > > > Either way, this seems like a good idea to me. > > I guess that would work because the layer count of 1D array textures > ends up in logical_depth0 rather than logical_height0? Sounds good to > me, but it would also have the side effect of not tiling "degenerate" 3D > textures with height=1 but depth>1, I guess we would still like to tile > those? How about (mt->logical_height0 == 1 && (mt->logical_depth0 == 1 || > mt->target != GL_TEXTURE_3D))? > > Thanks Ken!
I suppose that's fine, though frankly, trying to optimize a texture with height 1 at all seems pretty unnecessary to me. I've never seen a 3D texture with height 1 in the wild...
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev