diff options
author | Greg Hunt <[email protected]> | 2014-06-25 14:42:24 +0100 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2014-06-26 11:31:28 -0700 |
commit | 890287b96bfa2cae9bc3b477ab1eac2062f663ba (patch) | |
tree | de072d66dfbc2516f42d2ae8f94f45098d09f3b9 /src/mesa/drivers/dri/i965/gen7_urb.c | |
parent | 05126b9bb5763ab6a7418719e1ef2d660cc3c272 (diff) |
i965: Remove unneeded VS workaround stalls on Baytrail.
According to the workarounds list, these stalls aren't needed on
production Baytrail systems. Piglit confirms that as well.
These cause a small slowdown when we are sending a large number of small
batches to the GPU. Removing these improves performance by up to 5% on
some CPU bound SynMark tests (Batch[4-7], DrvState1, HdrBloom,
Multithread, ShMapPcf).
Signed-off-by: Gregory Hunt <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/i965/gen7_urb.c')
-rw-r--r-- | src/mesa/drivers/dri/i965/gen7_urb.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i965/gen7_urb.c b/src/mesa/drivers/dri/i965/gen7_urb.c index 2653e9cbeef..190d6f07493 100644 --- a/src/mesa/drivers/dri/i965/gen7_urb.c +++ b/src/mesa/drivers/dri/i965/gen7_urb.c @@ -121,9 +121,9 @@ gen7_emit_push_constant_state(struct brw_context *brw, unsigned vs_size, * A PIPE_CONTOL command with the CS Stall bit set must be programmed * in the ring after this instruction. * - * No such restriction exists for Haswell. + * No such restriction exists for Haswell or Baytrail. */ - if (brw->gen < 8 && !brw->is_haswell) + if (brw->gen < 8 && !brw->is_haswell && !brw->is_baytrail) gen7_emit_cs_stall_flush(brw); } @@ -263,7 +263,7 @@ gen7_upload_urb(struct brw_context *brw) brw->urb.vs_start = push_constant_chunks; brw->urb.gs_start = push_constant_chunks + vs_chunks; - if (brw->gen == 7 && !brw->is_haswell) + if (brw->gen == 7 && !brw->is_haswell && !brw->is_baytrail) gen7_emit_vs_workaround_flush(brw); gen7_emit_urb_state(brw, brw->urb.nr_vs_entries, vs_size, brw->urb.vs_start, |