Module: Mesa Branch: master Commit: 3394900dd33fbbe98a639e4e7945c0e6c2d9fc2b URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3394900dd33fbbe98a639e4e7945c0e6c2d9fc2b
Author: Rob Clark <robcl...@freedesktop.org> Date: Mon Jun 9 13:36:24 2014 -0400 freedreno: try for more squarish tile dimensions Worth about ~0.5fps in xonotic, for example. Signed-off-by: Rob Clark <robcl...@freedesktop.org> --- src/gallium/drivers/freedreno/freedreno_gmem.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/freedreno/freedreno_gmem.c b/src/gallium/drivers/freedreno/freedreno_gmem.c index 861ebf5..661458f 100644 --- a/src/gallium/drivers/freedreno/freedreno_gmem.c +++ b/src/gallium/drivers/freedreno/freedreno_gmem.c @@ -128,11 +128,17 @@ calculate_tiles(struct fd_context *ctx) bin_w = align(width / nbins_x, 32); } - /* then find a bin height that satisfies the memory constraints: + /* then find a bin width/height that satisfies the memory + * constraints: */ while ((bin_w * bin_h * cpp) > gmem_size) { - nbins_y++; - bin_h = align(height / nbins_y, 32); + if (bin_w > bin_h) { + nbins_x++; + bin_w = align(width / nbins_x, 32); + } else { + nbins_y++; + bin_h = align(height / nbins_y, 32); + } } DBG("using %d bins of size %dx%d", nbins_x*nbins_y, bin_w, bin_h); _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-commit