mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 04:20:08 +01:00
i915g: Optimize batchbuffer sizes
Now that we don't throttle at every batchbuffer, we can shrink the size of batchbuffers to achieve early flushing. This gives a significant speed boost in a lot of games (on the order of 20%).
This commit is contained in:
parent
7f7c7fda83
commit
fc24c7aede
2 changed files with 6 additions and 4 deletions
|
|
@ -704,12 +704,14 @@ i915_vbuf_render_create(struct i915_context *i915)
|
|||
|
||||
i915_render->i915 = i915;
|
||||
|
||||
i915_render->base.max_vertex_buffer_bytes = 16*4096;
|
||||
i915_render->base.max_vertex_buffer_bytes = 4*4096;
|
||||
|
||||
/* NOTE: it must be such that state and vertices indices fit in a single
|
||||
* batch buffer.
|
||||
* batch buffer. 4096 is one batch buffer and 430 is the max amount of
|
||||
* state in dwords. The result is the number of 16-bit indices which can
|
||||
* fit in a single batch buffer.
|
||||
*/
|
||||
i915_render->base.max_indices = 16*1024;
|
||||
i915_render->base.max_indices = (4096 - 430 * 4) / 2;
|
||||
|
||||
i915_render->base.get_vertex_info = i915_vbuf_render_get_vertex_info;
|
||||
i915_render->base.allocate_vertices = i915_vbuf_render_allocate_vertices;
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ i915_drm_winsys_create(int drmFD)
|
|||
|
||||
idws->fd = drmFD;
|
||||
idws->base.pci_id = deviceID;
|
||||
idws->max_batch_size = 16 * 4096;
|
||||
idws->max_batch_size = 1 * 4096;
|
||||
|
||||
idws->base.destroy = i915_drm_winsys_destroy;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue