https://bugs.freedesktop.org/show_bug.cgi?id=97273
Bug ID: 97273 Summary: [r600g, bisected] regression: NI/Turks WebGL (FishGL) massive speed decrease ~33% Product: Mesa Version: git Hardware: x86-64 (AMD64) OS: Linux (All) Status: NEW Severity: normal Priority: medium Component: Drivers/Gallium/r600 Assignee: dri-devel@lists.freedesktop.org Reporter: Dieter@nuetzel-hh.de QA Contact: dri-devel@lists.freedesktop.org
Current Mesa (git-3f100b7) and some stable versions show massive speed decrease on FishGL (WebGL) demo with konqueror 4.14.8 (KDE 4.14.9).
look at the aquarium: ~60 fps -> ~40 fps look from inside (diver): ~30 fps -> ~20 fps
I've bisected it to:
/opt/mesa> git bisect good 3735a925ef5692c836c4d26d6adee370dae1c2b0 is the first bad commit commit 3735a925ef5692c836c4d26d6adee370dae1c2b0 Author: Nicolai Hähnle nicolai.haehnle@amd.com Date: Wed Jun 8 13:24:14 2016 +0200
st/mesa: cache staging texture for glReadPixels
v2: add ST_DEBUG flag for disabling (suggested by Ilia)
Reviewed-by: Marek Olšák marek.olsak@amd.com (v1)
:040000 040000 f3adb5adc43e4def32bd23896489520d8cae84c6 72b374e2221e9cc1306d7bfacf39780ec5e42d36 Msrc
https://cgit.freedesktop.org/mesa/mesa/log/?ofs=1150
Revert didn't went smooth, so I've commented:
diff --git a/src/mesa/state_tracker/st_cb_readpixels.c b/src/mesa/state_tracker/st_cb_readpixels.c index 8eb839d..3af9530 100644 --- a/src/mesa/state_tracker/st_cb_readpixels.c +++ b/src/mesa/state_tracker/st_cb_readpixels.c @@ -329,7 +329,7 @@ try_cached_readpixels(struct st_context *st, struct st_renderbuffer *strb, struct pipe_resource *src = strb->texture; struct pipe_resource *dst = NULL;
- if (ST_DEBUG & DEBUG_NOREADPIXCACHE) + /* if (ST_DEBUG & DEBUG_NOREADPIXCACHE) */ return NULL;
/* Reset cache after invalidation or switch of parameters. */
After that speed was 'normal'.