aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/svga/svga_sampler_view.c
diff options
context:
space:
mode:
authorCharmaine Lee <[email protected]>2017-04-25 14:32:59 -0600
committerBrian Paul <[email protected]>2017-04-26 11:37:59 -0600
commit3626112214d25738411d8577f485fe51e9f8c96a (patch)
treee066033ceedfac4d76c4ab5196f12d0076f47e83 /src/gallium/drivers/svga/svga_sampler_view.c
parent7f2f695d4d6447bdaf70acda3cdae8aa43b6df3a (diff)
svga: cache the backing surface handle in the texture object
CinebenchR15 not only binds the same texture for rendering and sampling, it actually changes the framebuffer buffer attachment very often, causing a lot of backed surface view to be created and a lot of surface copies to be done. This patch caches the backed surface handle in the texture resource and allows the backed surface view to reuse the backed surface handle. With this patch, the number of backed surface view reduces from 1312 to 3. Unfortunately, this does not eliminate all the surface copies. There are still surface copies involved when we switch from original to backed surface handle for rendering. Tested with CinebenchR15, NobelClinicianViewer, Turbine, Lightsmark2008, MTT glretrace, MTT piglit. Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/drivers/svga/svga_sampler_view.c')
-rw-r--r--src/gallium/drivers/svga/svga_sampler_view.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/svga/svga_sampler_view.c b/src/gallium/drivers/svga/svga_sampler_view.c
index ee4ef3ca7b0..80a1b926a99 100644
--- a/src/gallium/drivers/svga/svga_sampler_view.c
+++ b/src/gallium/drivers/svga/svga_sampler_view.c
@@ -151,7 +151,7 @@ svga_get_tex_sampler_view(struct pipe_context *pipe,
flags, format,
min_lod,
max_lod - min_lod + 1,
- -1, 1, -1,
+ -1, 1, -1, FALSE,
&sv->key);
if (!sv->handle) {