Mesa (master): freedreno: tweak ringbuffer sizes/count

Rob Clark robclark at kemper.freedesktop.org
Wed Feb 19 17:23:19 UTC 2014


Module: Mesa
Branch: master
Commit: 9186cd39d42dff5a730134535c6ad647a51c44f8
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9186cd39d42dff5a730134535c6ad647a51c44f8

Author: Rob Clark <robclark at freedesktop.org>
Date:   Wed Feb 19 12:02:57 2014 -0500

freedreno: tweak ringbuffer sizes/count

Since we are now consuming two ringbuffers at a time, we probably want a
pool larger than 4.. but we don't need each individual ringbuffer to be
so large, so offset the pool size increase by reducing rb size.

Signed-off-by: Rob Clark <robclark at freedesktop.org>

---

 src/gallium/drivers/freedreno/freedreno_context.c |    2 +-
 src/gallium/drivers/freedreno/freedreno_context.h |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/freedreno/freedreno_context.c b/src/gallium/drivers/freedreno/freedreno_context.c
index f0485d8..5e2e711 100644
--- a/src/gallium/drivers/freedreno/freedreno_context.c
+++ b/src/gallium/drivers/freedreno/freedreno_context.c
@@ -200,7 +200,7 @@ fd_context_init(struct fd_context *ctx, struct pipe_screen *pscreen,
 	pctx->flush = fd_context_flush;
 
 	for (i = 0; i < ARRAY_SIZE(ctx->rings); i++) {
-		ctx->rings[i] = fd_ringbuffer_new(screen->pipe, 0x400000);
+		ctx->rings[i] = fd_ringbuffer_new(screen->pipe, 0x100000);
 		if (!ctx->rings[i])
 			goto fail;
 	}
diff --git a/src/gallium/drivers/freedreno/freedreno_context.h b/src/gallium/drivers/freedreno/freedreno_context.h
index ef83048..7db1fd1 100644
--- a/src/gallium/drivers/freedreno/freedreno_context.h
+++ b/src/gallium/drivers/freedreno/freedreno_context.h
@@ -154,7 +154,7 @@ struct fd_context {
 	 * normally have to wait before resetting to the start of the next
 	 * rb.
 	 */
-	struct fd_ringbuffer *rings[4];
+	struct fd_ringbuffer *rings[8];
 	unsigned rings_idx;
 
 	/* normal draw/clear cmds: */




More information about the mesa-commit mailing list