Set kernel information about stateless accesses to host memory
Related-To: NEO-5107 Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
This commit is contained in:
parent
077ae2726e
commit
b98af90896
|
@ -188,6 +188,9 @@ void KernelInfo::storePatchToken(const SPatchExecutionEnvironment *execEnv) {
|
|||
if (execEnv->CompiledForGreaterThan4GBBuffers == false) {
|
||||
this->requiresSshForBuffers = true;
|
||||
}
|
||||
if (execEnv->IndirectStatelessCount > 0) {
|
||||
this->hasStatelessAccessToHostMemory = true;
|
||||
}
|
||||
}
|
||||
|
||||
void KernelInfo::storeArgInfo(uint32_t argNum, ArgTypeTraits metadata, std::unique_ptr<ArgTypeMetadataExtended> metadataExtended) {
|
||||
|
|
|
@ -315,6 +315,7 @@ TEST_F(KernelDataTest, GivenExecutionEnvironmentNoReqdWorkGroupSizeWhenBuildingT
|
|||
executionEnvironment.IsFinalizer = false;
|
||||
executionEnvironment.SubgroupIndependentForwardProgressRequired = false;
|
||||
executionEnvironment.CompiledForGreaterThan4GBBuffers = false;
|
||||
executionEnvironment.IndirectStatelessCount = 0;
|
||||
|
||||
pPatchList = &executionEnvironment;
|
||||
patchListSize = executionEnvironment.Size;
|
||||
|
@ -325,6 +326,7 @@ TEST_F(KernelDataTest, GivenExecutionEnvironmentNoReqdWorkGroupSizeWhenBuildingT
|
|||
EXPECT_EQ_VAL(0, pKernelInfo->kernelDescriptor.kernelAttributes.requiredWorkgroupSize[0]);
|
||||
EXPECT_EQ_VAL(0, pKernelInfo->kernelDescriptor.kernelAttributes.requiredWorkgroupSize[1]);
|
||||
EXPECT_EQ_VAL(0, pKernelInfo->kernelDescriptor.kernelAttributes.requiredWorkgroupSize[2]);
|
||||
EXPECT_FALSE(pKernelInfo->hasStatelessAccessToHostMemory);
|
||||
}
|
||||
|
||||
TEST_F(KernelDataTest, GivenExecutionEnvironmentWhenBuildingThenProgramIsCorrect) {
|
||||
|
@ -350,6 +352,7 @@ TEST_F(KernelDataTest, GivenExecutionEnvironmentWhenBuildingThenProgramIsCorrect
|
|||
executionEnvironment.IsFinalizer = false;
|
||||
executionEnvironment.SubgroupIndependentForwardProgressRequired = false;
|
||||
executionEnvironment.CompiledForGreaterThan4GBBuffers = false;
|
||||
executionEnvironment.IndirectStatelessCount = 1;
|
||||
|
||||
pPatchList = &executionEnvironment;
|
||||
patchListSize = executionEnvironment.Size;
|
||||
|
@ -361,6 +364,7 @@ TEST_F(KernelDataTest, GivenExecutionEnvironmentWhenBuildingThenProgramIsCorrect
|
|||
EXPECT_EQ(16u, pKernelInfo->kernelDescriptor.kernelAttributes.requiredWorkgroupSize[1]);
|
||||
EXPECT_EQ(8u, pKernelInfo->kernelDescriptor.kernelAttributes.requiredWorkgroupSize[2]);
|
||||
EXPECT_TRUE(pKernelInfo->requiresSshForBuffers);
|
||||
EXPECT_TRUE(pKernelInfo->hasStatelessAccessToHostMemory);
|
||||
}
|
||||
|
||||
TEST_F(KernelDataTest, GivenExecutionEnvironmentCompiledForGreaterThan4gbBuffersWhenBuildingThenProgramIsCorrect) {
|
||||
|
|
Loading…
Reference in New Issue