From acb23488de161f986636a8dc5a626cb42f2038fc Mon Sep 17 00:00:00 2001 From: foreman Date: Wed, 20 Sep 2017 12:18:30 -0400 Subject: [PATCH] P4 to Git Change 1461118 by gandryey@gera-w8 on 2017/09/20 12:04:57 SWDEV-86035 - Switch back to 8 CBs due to HW hangs with HWSC on VI. Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#59 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.hpp#32 edit [ROCm/clr commit: e53571d05b6715696125db999a444604e7c39d11] --- projects/clr/rocclr/runtime/device/pal/palvirtual.cpp | 2 +- projects/clr/rocclr/runtime/device/pal/palvirtual.hpp | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/projects/clr/rocclr/runtime/device/pal/palvirtual.cpp b/projects/clr/rocclr/runtime/device/pal/palvirtual.cpp index 95c9667e41..3f4062e5f4 100644 --- a/projects/clr/rocclr/runtime/device/pal/palvirtual.cpp +++ b/projects/clr/rocclr/runtime/device/pal/palvirtual.cpp @@ -757,7 +757,7 @@ bool VirtualGPU::create(bool profiling, uint deviceQueueSize, uint rtCUs, createInfo.allocInfo[Pal::CommandDataAlloc].allocHeap = Pal::GpuHeapGartCacheable; createInfo.allocInfo[Pal::CommandDataAlloc].allocSize = createInfo.allocInfo[Pal::CommandDataAlloc].suballocSize = - VirtualGPU::Queue::MaxCommands * (256 + ((profiling) ? 64 : 0)); + VirtualGPU::Queue::MaxCommands * (320 + ((profiling) ? 64 : 0)); createInfo.allocInfo[Pal::EmbeddedDataAlloc].allocHeap = Pal::GpuHeapGartCacheable; createInfo.allocInfo[Pal::EmbeddedDataAlloc].allocSize = 64 * Ki; diff --git a/projects/clr/rocclr/runtime/device/pal/palvirtual.hpp b/projects/clr/rocclr/runtime/device/pal/palvirtual.hpp index ef4d1644a7..2ec48ecdfc 100644 --- a/projects/clr/rocclr/runtime/device/pal/palvirtual.hpp +++ b/projects/clr/rocclr/runtime/device/pal/palvirtual.hpp @@ -41,7 +41,8 @@ class VirtualGPU : public device::VirtualDevice { public: class Queue : public amd::HeapObject { public: - static const uint MaxCmdBuffers = 16; + // Note: More command buffers may cause a HW hang with HWSC on VI family in OCLPerfKernelArguments + static const uint MaxCmdBuffers = 8; static const uint MaxCommands = 256; static const uint StartCmdBufIdx = 1; static const uint FirstMemoryReference = 0x80000000;