Adjust minWorkGroupSize when EUFusion is enabled

Related-To: NEO-5260

Co-authored-by: Bartlomiej Wolny <bartlomiej.wolny@intel.com>
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
This commit is contained in:
Bartlomiej Wolny
2021-03-23 17:54:16 +00:00
committed by Compute-Runtime-Automation
parent 3c2a7ee49a
commit b98148fb3f
6 changed files with 131 additions and 45 deletions

View File

@@ -366,13 +366,13 @@ ze_result_t KernelImp::suggestGroupSize(uint32_t globalSizeX, uint32_t globalSiz
if (NEO::DebugManager.flags.EnableComputeWorkSizeND.get()) {
auto usesImages = getImmutableData()->getDescriptor().kernelAttributes.flags.usesImages;
auto coreFamily = module->getDevice()->getNEODevice()->getHardwareInfo().platform.eRenderCoreFamily;
const auto hwInfo = &module->getDevice()->getNEODevice()->getHardwareInfo();
const auto &deviceInfo = module->getDevice()->getNEODevice()->getDeviceInfo();
uint32_t numThreadsPerSubSlice = (uint32_t)deviceInfo.maxNumEUsPerSubSlice * deviceInfo.numThreadsPerEU;
uint32_t localMemSize = (uint32_t)deviceInfo.localMemSize;
NEO::WorkSizeInfo wsInfo(maxWorkGroupSize, kernelImmData->getDescriptor().kernelAttributes.usesBarriers(), simd, this->getSlmTotalSize(),
coreFamily, numThreadsPerSubSlice, localMemSize,
hwInfo, numThreadsPerSubSlice, localMemSize,
usesImages, false);
NEO::computeWorkgroupSizeND(wsInfo, retGroupSize, workItems, dim);
} else {