[Mesa-dev] [PATCH 1/2] radv: Add flag for enabling binning.

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Sat Dec 30 17:38:39 UTC 2017


Letting it be disabled by default.
---
 src/amd/vulkan/radv_debug.h  | 1 +
 src/amd/vulkan/radv_device.c | 8 ++++++++
 2 files changed, 9 insertions(+)

diff --git a/src/amd/vulkan/radv_debug.h b/src/amd/vulkan/radv_debug.h
index af07564833e..5b37bfe0847 100644
--- a/src/amd/vulkan/radv_debug.h
+++ b/src/amd/vulkan/radv_debug.h
@@ -48,6 +48,7 @@ enum {
 	RADV_PERFTEST_NO_BATCHCHAIN  =   0x1,
 	RADV_PERFTEST_SISCHED        =   0x2,
 	RADV_PERFTEST_LOCAL_BOS      =   0x4,
+	RADV_PERFTEST_BINNING     =   0x8,
 };
 
 bool
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 130b4222bcd..ed46692cefb 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -344,6 +344,7 @@ static const struct debug_control radv_perftest_options[] = {
 	{"nobatchchain", RADV_PERFTEST_NO_BATCHCHAIN},
 	{"sisched", RADV_PERFTEST_SISCHED},
 	{"localbos", RADV_PERFTEST_LOCAL_BOS},
+	{"binning", RADV_PERFTEST_BINNING},
 	{NULL, 0}
 };
 
@@ -1080,6 +1081,13 @@ VkResult radv_CreateDevice(
 		}
 	}
 
+	device->pbb_allowed = device->physical_device->rad_info.chip_class >= GFX9 &&
+	                      (device->instance->perftest_flags & RADV_PERFTEST_BINNING);
+
+	/* Disabled and not implemented for now. */
+	device->dfsm_allowed = device->pbb_allowed && false;
+
+
 #if HAVE_LLVM < 0x0400
 	device->llvm_supports_spill = false;
 #else
-- 
2.15.1



More information about the mesa-dev mailing list