[Mesa-dev] R600 tiling halves the frame rate
Tzvetan Mikov
tmikov at jupiter.com
Fri Oct 26 19:26:16 PDT 2012
> -----Original Message-----
> From: Jerome Glisse
> > Can anyone shed some light on this? Is this by design - e.g. is
> > this a case of "we know that tiling is currently slower than linear
> > but the huge payoff is scheduled to arrive in a future revision"?
> >
> > Thanks!
> > Tzvetan
>
> No, in all benchmark i made on various gpu from hd2xxx to hd6xxx
> tiling always gave a performance boost btw 5% up to 20%.
This is interesting. All I am doing is rotating a big texture on the
screen. I am using EGL+Gallium, so it is as simple as it gets.
The hack I am using to disable texture tiling is also extremely simple
(see below). It speeds up the FPS measurably, up to the extreme
case of doubling it on HD6460.
What am I missing?
Regards,
Tzvetan
commit 1bb7da091ccf875571d376eb8f9451cb711eb978
Author: Tzvetan Mikov <tmikov at jupiter.com>
Date: Thu Oct 18 12:29:00 2012 -0700
A VERY quick and drity hack to enable linear textures
diff --git a/src/gallium/drivers/r600/r600_texture.c b/src/gallium/drivers/r600/r600_texture.c
index 85e4e0c..dc572f1 100644
--- a/src/gallium/drivers/r600/r600_texture.c
+++ b/src/gallium/drivers/r600/r600_texture.c
@@ -467,6 +467,9 @@ struct pipe_resource *r600_texture_create(struct pipe_screen *screen,
if (util_format_description(templ->format)->layout == UTIL_FORMAT_LAYOUT_SUBSAMPLED)
array_mode = V_038000_ARRAY_LINEAR_ALIGNED;
+ // HACK HACK
+ array_mode = V_038000_ARRAY_LINEAR_ALIGNED;
+
r = r600_init_surface(rscreen, &surface, templ, array_mode,
templ->flags & R600_RESOURCE_FLAG_TRANSFER,
templ->flags & R600_RESOURCE_FLAG_FLUSHED_DEPTH);
More information about the mesa-dev
mailing list