From 65ab296840ba1a0e899a1b4fdb1751a5018d4924 Mon Sep 17 00:00:00 2001 From: shaoyunl Date: Mon, 29 Jul 2019 15:02:32 -0400 Subject: [PATCH] KFDTest: Set CS_W32_EN bit for wave32 workloads for GFX10 On GFX10, the wave size is determined by the COMPUTE_DISPATCH_INITIATOR value passed to DISPATCH_DIRECT.CS_W32_EN, default 0 value was giving 64 lane waves Change-Id: Ie8c407a24bd2825757ec481be62247b35047e5ca Signed-off-by: shaoyunl --- tests/kfdtest/src/Dispatch.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/kfdtest/src/Dispatch.cpp b/tests/kfdtest/src/Dispatch.cpp index 559594ee44..dc75c4c671 100644 --- a/tests/kfdtest/src/Dispatch.cpp +++ b/tests/kfdtest/src/Dispatch.cpp @@ -200,10 +200,12 @@ void Dispatch::BuildIb() { 0, // COMPUTE_USER_DATA_15 - - unused }; - const unsigned int DISPATCH_INIT_VALUE = 0x00000021 | (is_dgpu() ? 0 : 0x1000); + const unsigned int DISPATCH_INIT_VALUE = 0x00000021 | (is_dgpu() ? 0 : 0x1000) | + ((m_FamilyId >= FAMILY_NV) ? 0x8000 : 0); // {COMPUTE_SHADER_EN=1, PARTIAL_TG_EN=0, FORCE_START_AT_000=0, ORDERED_APPEND_ENBL=0, // ORDERED_APPEND_MODE=0, USE_THREAD_DIMENSIONS=1, ORDER_MODE=0, DISPATCH_CACHE_CNTL=0, // SCALAR_L1_INV_VOL=0, VECTOR_L1_INV_VOL=0, DATA_ATC=?, RESTORE=0} + // Set CS_W32_EN for wave32 workloads for gfx10 since all the shaders used in KFDTest is 32 bit . m_IndirectBuf.AddPacket(PM4AcquireMemoryPacket(m_FamilyId));