Mesa (main): iris: Enable tessellation redistribution

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Oct 13 22:51:58 UTC 2021


Module: Mesa
Branch: main
Commit: 20c0ca75f55409f279a23a415f5c7dd70a012665
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=20c0ca75f55409f279a23a415f5c7dd70a012665

Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Thu Jun  4 11:50:35 2020 -0700

iris: Enable tessellation redistribution

This patch adds Tessellation Distribution on top of Geometry
Distribution. Using recommended values based on performance studies
across a range of workloads.

Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
Reviewed-by: Sagar Ghuge <sagar.ghuge at intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12091>

---

 src/gallium/drivers/iris/iris_state.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c
index c2e996a61df..07261416da3 100644
--- a/src/gallium/drivers/iris/iris_state.c
+++ b/src/gallium/drivers/iris/iris_state.c
@@ -4435,6 +4435,16 @@ iris_store_tes_state(const struct intel_device_info *devinfo,
       te.TEEnable = true;
       te.MaximumTessellationFactorOdd = 63.0;
       te.MaximumTessellationFactorNotOdd = 64.0;
+#if GFX_VERx10 >= 125
+      te.TessellationDistributionMode = TEDMODE_RR_FREE;
+      te.TessellationDistributionLevel = TEDLEVEL_PATCH;
+      /* 64_TRIANGLES */
+      te.SmallPatchThreshold = 3;
+      /* 1K_TRIANGLES */
+      te.TargetBlockSize = 8;
+      /* 1K_TRIANGLES */
+      te.LocalBOPAccumulatorThreshold = 1;
+#endif
    }
 
    iris_pack_command(GENX(3DSTATE_DS), ds_state, ds) {



More information about the mesa-commit mailing list