From de7e8b1d014aaecf87c2b26e8ab7e89266d5e176 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 25 Apr 2013 14:41:36 -0700 Subject: [PATCH] intel: Be more conservative in disabling tiling to save memory. Improves GLB2.7 trex performance 1.01985% +/- 0.721366% on my IVB (n=10) and by 3.38771% +/- 0.584241% (n=15) on my HSW, due to a 32x32 ARGB8888 cubemap going from untiled to tiled. Reviewed-by: Daniel Vetter --- src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c index f70228cdb04..d05eb713d8b 100644 --- a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c +++ b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c @@ -346,11 +346,13 @@ intel_miptree_choose_tiling(struct intel_context *intel, base_format == GL_DEPTH_STENCIL_EXT)) return I915_TILING_Y; - /* If the width is smaller than a tile, don't bother tiling. */ - if (width0 < 64) + int minimum_pitch = mt->total_width * mt->cpp; + + /* If the width is much smaller than a tile, don't bother tiling. */ + if (minimum_pitch < 64) return I915_TILING_NONE; - if (ALIGN(mt->total_width * mt->cpp, 512) >= 32768) { + if (ALIGN(minimum_pitch, 512) >= 32768) { perf_debug("%dx%d miptree too large to blit, falling back to untiled", mt->total_width, mt->total_height); return I915_TILING_NONE; -- 2.30.2