mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-21 09:14:47 +08:00
is_simt_thread token support
Change-Id: I8cee6ff26229f0f492ba0d1e5e61d6e46e0c2486 Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
committed by
sys_ocldev
parent
a06369230c
commit
1926ef8319
@@ -726,23 +726,30 @@ TEST_P(PerformanceHintKernelTest, GivenSpillFillWhenKernelIsInitializedThenConte
|
||||
TEST_P(PerformanceHintKernelTest, GivenPrivateSurfaceWhenKernelIsInitializedThenContextProvidesProperHint) {
|
||||
auto pDevice = castToObject<ClDevice>(devices[0]);
|
||||
static_cast<OsAgnosticMemoryManager *>(pDevice->getMemoryManager())->turnOnFakingBigAllocations();
|
||||
auto size = zeroSized ? 0 : 1024;
|
||||
MockKernelWithInternals mockKernel(*pDevice, context);
|
||||
SPatchAllocateStatelessPrivateSurface allocateStatelessPrivateMemorySurface;
|
||||
|
||||
allocateStatelessPrivateMemorySurface.PerThreadPrivateMemorySize = size;
|
||||
allocateStatelessPrivateMemorySurface.SurfaceStateHeapOffset = 128;
|
||||
allocateStatelessPrivateMemorySurface.DataParamOffset = 16;
|
||||
allocateStatelessPrivateMemorySurface.DataParamSize = 8;
|
||||
for (auto isSmitThread : {false, true}) {
|
||||
auto size = zeroSized ? 0 : 1024;
|
||||
|
||||
mockKernel.kernelInfo.patchInfo.pAllocateStatelessPrivateSurface = &allocateStatelessPrivateMemorySurface;
|
||||
size *= pDevice->getSharedDeviceInfo().computeUnitsUsedForScratch * mockKernel.mockKernel->getKernelInfo().getMaxSimdSize();
|
||||
MockKernelWithInternals mockKernel(*pDevice, context);
|
||||
SPatchAllocateStatelessPrivateSurface allocateStatelessPrivateMemorySurface = {};
|
||||
|
||||
mockKernel.mockKernel->initialize();
|
||||
allocateStatelessPrivateMemorySurface.PerThreadPrivateMemorySize = size;
|
||||
allocateStatelessPrivateMemorySurface.SurfaceStateHeapOffset = 128;
|
||||
allocateStatelessPrivateMemorySurface.DataParamOffset = 16;
|
||||
allocateStatelessPrivateMemorySurface.DataParamSize = 8;
|
||||
|
||||
snprintf(expectedHint, DriverDiagnostics::maxHintStringSize, DriverDiagnostics::hintFormat[PRIVATE_MEMORY_USAGE_TOO_HIGH],
|
||||
mockKernel.mockKernel->getKernelInfo().kernelDescriptor.kernelMetadata.kernelName.c_str(), size);
|
||||
EXPECT_EQ(!zeroSized, containsHint(expectedHint, userData));
|
||||
allocateStatelessPrivateMemorySurface.IsSimtThread = isSmitThread;
|
||||
|
||||
mockKernel.kernelInfo.patchInfo.pAllocateStatelessPrivateSurface = &allocateStatelessPrivateMemorySurface;
|
||||
size *= pDevice->getSharedDeviceInfo().computeUnitsUsedForScratch;
|
||||
size *= isSmitThread ? 1 : mockKernel.mockKernel->getKernelInfo().getMaxSimdSize();
|
||||
|
||||
mockKernel.mockKernel->initialize();
|
||||
|
||||
snprintf(expectedHint, DriverDiagnostics::maxHintStringSize, DriverDiagnostics::hintFormat[PRIVATE_MEMORY_USAGE_TOO_HIGH],
|
||||
mockKernel.mockKernel->getKernelInfo().kernelDescriptor.kernelMetadata.kernelName.c_str(), size);
|
||||
EXPECT_EQ(!zeroSized, containsHint(expectedHint, userData));
|
||||
}
|
||||
}
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
|
||||
Reference in New Issue
Block a user