Mesa (master): nouveau: Get larger push buffers.

Francisco Jerez currojerez at kemper.freedesktop.org
Tue Oct 12 02:19:55 UTC 2010


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

Author: Francisco Jerez <currojerez at riseup.net>
Date:   Tue Sep 28 22:51:28 2010 +0200

nouveau: Get larger push buffers.

Useful to amortize the command submission/reloc overhead (e.g. etracer
goes from 72 to 109 FPS on nv4b).

---

 src/gallium/drivers/nouveau/nouveau_screen.c   |    2 +-
 src/mesa/drivers/dri/nouveau/nouveau_context.c |    2 +-
 src/mesa/drivers/dri/nouveau/nouveau_vbo_t.c   |    2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/nouveau/nouveau_screen.c b/src/gallium/drivers/nouveau/nouveau_screen.c
index ebb21a6..a9426df 100644
--- a/src/gallium/drivers/nouveau/nouveau_screen.c
+++ b/src/gallium/drivers/nouveau/nouveau_screen.c
@@ -236,7 +236,7 @@ nouveau_screen_init(struct nouveau_screen *screen, struct nouveau_device *dev)
 	int ret;
 
 	ret = nouveau_channel_alloc(dev, 0xbeef0201, 0xbeef0202,
-				    &screen->channel);
+				    512*1024, &screen->channel);
 	if (ret)
 		return ret;
 	screen->device = dev;
diff --git a/src/mesa/drivers/dri/nouveau/nouveau_context.c b/src/mesa/drivers/dri/nouveau/nouveau_context.c
index 6369e8d..1c7f600 100644
--- a/src/mesa/drivers/dri/nouveau/nouveau_context.c
+++ b/src/mesa/drivers/dri/nouveau/nouveau_context.c
@@ -128,7 +128,7 @@ nouveau_context_init(GLcontext *ctx, struct nouveau_screen *screen,
 
 	/* Allocate a hardware channel. */
 	ret = nouveau_channel_alloc(context_dev(ctx), 0xbeef0201, 0xbeef0202,
-				    &nctx->hw.chan);
+				    512*1024, &nctx->hw.chan);
 	if (ret) {
 		nouveau_error("Error initializing the FIFO.\n");
 		return GL_FALSE;
diff --git a/src/mesa/drivers/dri/nouveau/nouveau_vbo_t.c b/src/mesa/drivers/dri/nouveau/nouveau_vbo_t.c
index e4415cb..9373b93 100644
--- a/src/mesa/drivers/dri/nouveau/nouveau_vbo_t.c
+++ b/src/mesa/drivers/dri/nouveau/nouveau_vbo_t.c
@@ -32,7 +32,7 @@
 
 /* Arbitrary pushbuf length we can assume we can get with a single
  * WAIT_RING. */
-#define PUSHBUF_DWORDS 2048
+#define PUSHBUF_DWORDS 65536
 
 /* Functions to set up struct nouveau_array_state from something like
  * a GL array or index buffer. */




More information about the mesa-commit mailing list