mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-03 23:03:02 +08:00
refactor: remove not needed code related to device enqueue
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
d77ba50455
commit
500ae54fc1
@@ -35,7 +35,6 @@ bool hasEmptyTokensInfo(const NEO::PatchTokenBinary::KernelFromPatchtokens &kern
|
||||
empty &= nullptr == toks.allocateStatelessConstantMemorySurfaceWithInitialization;
|
||||
empty &= nullptr == toks.allocateStatelessGlobalMemorySurfaceWithInitialization;
|
||||
empty &= nullptr == toks.allocateStatelessPrintfSurface;
|
||||
empty &= nullptr == toks.allocateStatelessDefaultDeviceQueueSurface;
|
||||
empty &= nullptr == toks.inlineVmeSamplerInfo;
|
||||
empty &= nullptr == toks.gtpinFreeGrfInfo;
|
||||
empty &= nullptr == toks.stateSip;
|
||||
@@ -327,7 +326,6 @@ TEST(KernelDecoder, GivenKernelWithValidKernelPatchtokensThenDecodingSucceedsAnd
|
||||
auto allocateStatelessConstantMemorySurfaceWithInitializationOff = pushBackToken<SPatchAllocateStatelessConstantMemorySurfaceWithInitialization>(PATCH_TOKEN_ALLOCATE_STATELESS_CONSTANT_MEMORY_SURFACE_WITH_INITIALIZATION, storage);
|
||||
auto allocateStatelessGlobalMemorySurfaceWithInitializationOff = pushBackToken<SPatchAllocateStatelessGlobalMemorySurfaceWithInitialization>(PATCH_TOKEN_ALLOCATE_STATELESS_GLOBAL_MEMORY_SURFACE_WITH_INITIALIZATION, storage);
|
||||
auto allocateStatelessPrintfSurfaceOff = pushBackToken<SPatchAllocateStatelessPrintfSurface>(PATCH_TOKEN_ALLOCATE_STATELESS_PRINTF_SURFACE, storage);
|
||||
auto allocateStatelessDefaultDeviceQueueSurfaceOff = pushBackToken<SPatchAllocateStatelessDefaultDeviceQueueSurface>(PATCH_TOKEN_ALLOCATE_STATELESS_DEFAULT_DEVICE_QUEUE_SURFACE, storage);
|
||||
auto inlineVmeSamplerInfoOff = pushBackToken<SPatchInlineVMESamplerInfo>(PATCH_TOKEN_INLINE_VME_SAMPLER_INFO, storage);
|
||||
auto gtpinFreeGrfInfoOff = pushBackToken<SPatchGtpinFreeGRFInfo>(PATCH_TOKEN_GTPIN_FREE_GRF_INFO, storage);
|
||||
auto gtpinInfoOff = pushBackToken<SPatchItemHeader>(PATCH_TOKEN_GTPIN_INFO, storage);
|
||||
@@ -362,7 +360,6 @@ TEST(KernelDecoder, GivenKernelWithValidKernelPatchtokensThenDecodingSucceedsAnd
|
||||
EXPECT_TRUE(tokenOffsetMatched(base, allocateStatelessConstantMemorySurfaceWithInitializationOff, decodedKernel.tokens.allocateStatelessConstantMemorySurfaceWithInitialization));
|
||||
EXPECT_TRUE(tokenOffsetMatched(base, allocateStatelessGlobalMemorySurfaceWithInitializationOff, decodedKernel.tokens.allocateStatelessGlobalMemorySurfaceWithInitialization));
|
||||
EXPECT_TRUE(tokenOffsetMatched(base, allocateStatelessPrintfSurfaceOff, decodedKernel.tokens.allocateStatelessPrintfSurface));
|
||||
EXPECT_TRUE(tokenOffsetMatched(base, allocateStatelessDefaultDeviceQueueSurfaceOff, decodedKernel.tokens.allocateStatelessDefaultDeviceQueueSurface));
|
||||
EXPECT_TRUE(tokenOffsetMatched(base, inlineVmeSamplerInfoOff, decodedKernel.tokens.inlineVmeSamplerInfo));
|
||||
EXPECT_TRUE(tokenOffsetMatched(base, gtpinFreeGrfInfoOff, decodedKernel.tokens.gtpinFreeGrfInfo));
|
||||
EXPECT_TRUE(tokenOffsetMatched(base, gtpinInfoOff, decodedKernel.tokens.gtpinInfo));
|
||||
@@ -479,17 +476,11 @@ TEST(KernelDecoder, GivenKernelWithValidObjectArgPatchtokensThenDecodingSucceeds
|
||||
statelessConstantMemTok.Size = sizeof(statelessConstantMemTok);
|
||||
statelessConstantMemTok.ArgumentNumber = 5;
|
||||
|
||||
iOpenCL::SPatchStatelessDeviceQueueKernelArgument statelessDeviceQueueTok = {};
|
||||
statelessDeviceQueueTok.Token = iOpenCL::PATCH_TOKEN::PATCH_TOKEN_STATELESS_DEVICE_QUEUE_KERNEL_ARGUMENT;
|
||||
statelessDeviceQueueTok.Size = sizeof(iOpenCL::SPatchGlobalMemoryObjectKernelArgument);
|
||||
statelessDeviceQueueTok.ArgumentNumber = 4;
|
||||
|
||||
auto samplerOff = pushBackToken(samplerTok, storage);
|
||||
auto imageOff = pushBackToken(imageTok, storage);
|
||||
auto globalMemOff = pushBackToken(globalMemTok, storage);
|
||||
auto statelessGlobalMemOff = pushBackToken(statelessGlobalMemTok, storage);
|
||||
auto statelessConstantMemOff = pushBackToken(statelessConstantMemTok, storage);
|
||||
auto statelessDeviceQueueOff = pushBackToken(statelessDeviceQueueTok, storage);
|
||||
|
||||
ASSERT_EQ(storage.data(), kernelToEncode.blobs.kernelInfo.begin());
|
||||
auto kernelHeader = reinterpret_cast<iOpenCL::SKernelBinaryHeaderCommon *>(storage.data());
|
||||
@@ -523,10 +514,6 @@ TEST(KernelDecoder, GivenKernelWithValidObjectArgPatchtokensThenDecodingSucceeds
|
||||
EXPECT_EQ(NEO::PatchTokenBinary::ArgObjectType::buffer, decodedKernel.tokens.kernelArgs[statelessConstantMemTok.ArgumentNumber].objectType);
|
||||
EXPECT_EQ(NEO::PatchTokenBinary::ArgObjectTypeSpecialized::none, decodedKernel.tokens.kernelArgs[statelessConstantMemTok.ArgumentNumber].objectTypeSpecialized);
|
||||
|
||||
EXPECT_TRUE(tokenOffsetMatched(base, statelessDeviceQueueOff, decodedKernel.tokens.kernelArgs[statelessDeviceQueueTok.ArgumentNumber].objectArg));
|
||||
EXPECT_EQ(NEO::PatchTokenBinary::ArgObjectType::buffer, decodedKernel.tokens.kernelArgs[statelessDeviceQueueTok.ArgumentNumber].objectType);
|
||||
EXPECT_EQ(NEO::PatchTokenBinary::ArgObjectTypeSpecialized::none, decodedKernel.tokens.kernelArgs[statelessDeviceQueueTok.ArgumentNumber].objectTypeSpecialized);
|
||||
|
||||
for (int i = 0; i < 6; ++i) {
|
||||
EXPECT_EQ(nullptr, decodedKernel.tokens.kernelArgs[i].argInfo);
|
||||
EXPECT_EQ(0U, decodedKernel.tokens.kernelArgs[i].byValMap.size());
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2019-2024 Intel Corporation
|
||||
* Copyright (C) 2019-2025 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
@@ -534,7 +534,6 @@ TEST(KernelDumper, givenKernelWithNonCrossthreadDataPatchtokensThenProperlyCreat
|
||||
auto allocateStatelessConstantMemorySurfaceWithInitialization = initToken<SPatchAllocateStatelessConstantMemorySurfaceWithInitialization>(PATCH_TOKEN_ALLOCATE_CONSTANT_MEMORY_SURFACE_WITH_INITIALIZATION);
|
||||
auto allocateStatelessGlobalMemorySurfaceWithInitialization = initToken<SPatchAllocateStatelessGlobalMemorySurfaceWithInitialization>(PATCH_TOKEN_ALLOCATE_GLOBAL_MEMORY_SURFACE_WITH_INITIALIZATION);
|
||||
auto allocateStatelessPrintfSurface = initToken<SPatchAllocateStatelessPrintfSurface>(PATCH_TOKEN_ALLOCATE_PRINTF_SURFACE);
|
||||
auto allocateStatelessDefaultDeviceQueueSurface = initToken<SPatchAllocateStatelessDefaultDeviceQueueSurface>(PATCH_TOKEN_STATELESS_DEVICE_QUEUE_KERNEL_ARGUMENT);
|
||||
auto inlineVmeSamplerInfo = initToken<SPatchItemHeader>(PATCH_TOKEN_INLINE_VME_SAMPLER_INFO);
|
||||
auto gtpinFreeGrfInfo = initToken<SPatchGtpinFreeGRFInfo>(PATCH_TOKEN_GTPIN_FREE_GRF_INFO);
|
||||
auto stateSip = initToken<SPatchStateSIP>(PATCH_TOKEN_STATE_SIP);
|
||||
@@ -559,7 +558,6 @@ TEST(KernelDumper, givenKernelWithNonCrossthreadDataPatchtokensThenProperlyCreat
|
||||
kernel.tokens.allocateStatelessConstantMemorySurfaceWithInitialization = &allocateStatelessConstantMemorySurfaceWithInitialization;
|
||||
kernel.tokens.allocateStatelessGlobalMemorySurfaceWithInitialization = &allocateStatelessGlobalMemorySurfaceWithInitialization;
|
||||
kernel.tokens.allocateStatelessPrintfSurface = &allocateStatelessPrintfSurface;
|
||||
kernel.tokens.allocateStatelessDefaultDeviceQueueSurface = &allocateStatelessDefaultDeviceQueueSurface;
|
||||
kernel.tokens.inlineVmeSamplerInfo = &inlineVmeSamplerInfo;
|
||||
kernel.tokens.gtpinFreeGrfInfo = >pinFreeGrfInfo;
|
||||
kernel.tokens.stateSip = &stateSip;
|
||||
@@ -734,14 +732,6 @@ Kernel-scope tokens section size : )==="
|
||||
uint32_t DataParamOffset;// = 0
|
||||
uint32_t DataParamSize;// = 0
|
||||
}
|
||||
struct SPatchAllocateStatelessDefaultDeviceQueueSurface :
|
||||
SPatchItemHeader (Token=46(PATCH_TOKEN_STATELESS_DEVICE_QUEUE_KERNEL_ARGUMENT), Size=)==="
|
||||
<< sizeof(SPatchAllocateStatelessDefaultDeviceQueueSurface) << R"===()
|
||||
{
|
||||
uint32_t SurfaceStateHeapOffset;// = 0
|
||||
uint32_t DataParamOffset;// = 0
|
||||
uint32_t DataParamSize;// = 0
|
||||
}
|
||||
struct SPatchItemHeader {
|
||||
uint32_t Token;// = 50(PATCH_TOKEN_INLINE_VME_SAMPLER_INFO)
|
||||
uint32_t Size;// = )==="
|
||||
@@ -1550,31 +1540,6 @@ TEST(KernelArgDumper, givenStatelessConstantMemoryObjectKernelArgThenProperlyCre
|
||||
EXPECT_STREQ(expected.str().c_str(), generated.c_str());
|
||||
}
|
||||
|
||||
TEST(KernelArgDumper, givenStatelessDeviceQueueObjectKernelArgThenProperlyCreatesDump) {
|
||||
NEO::PatchTokenBinary::KernelArgFromPatchtokens kernelArg = {};
|
||||
auto objectArg = PatchTokensTestData::initToken<iOpenCL::SPatchStatelessDeviceQueueKernelArgument>(iOpenCL::PATCH_TOKEN_STATELESS_DEVICE_QUEUE_KERNEL_ARGUMENT);
|
||||
kernelArg.objectArg = &objectArg;
|
||||
kernelArg.objectType = NEO::PatchTokenBinary::ArgObjectType::buffer;
|
||||
auto generated = NEO::PatchTokenBinary::asString(kernelArg, " | ");
|
||||
std::stringstream expected;
|
||||
expected << R"===( | Kernel argument of type BUFFER
|
||||
| struct SPatchStatelessDeviceQueueKernelArgument :
|
||||
| SPatchItemHeader (Token=46(PATCH_TOKEN_STATELESS_DEVICE_QUEUE_KERNEL_ARGUMENT), Size=)==="
|
||||
<< sizeof(objectArg) << R"===()
|
||||
| {
|
||||
| uint32_t ArgumentNumber;// = 0
|
||||
| uint32_t SurfaceStateHeapOffset;// = 0
|
||||
| uint32_t DataParamOffset;// = 0
|
||||
| uint32_t DataParamSize;// = 0
|
||||
| uint32_t LocationIndex;// = 0
|
||||
| uint32_t LocationIndex2;// = 0
|
||||
| uint32_t IsEmulationArgument;// = 0
|
||||
| }
|
||||
| Buffer Metadata:
|
||||
)===";
|
||||
EXPECT_STREQ(expected.str().c_str(), generated.c_str());
|
||||
}
|
||||
|
||||
TEST(KernelArgDumper, givenBufferKernelArgWithMetadataTokensThenProperlyCreatesDump) {
|
||||
NEO::PatchTokenBinary::KernelArgFromPatchtokens kernelArg = {};
|
||||
kernelArg.objectType = NEO::PatchTokenBinary::ArgObjectType::buffer;
|
||||
|
||||
@@ -329,20 +329,6 @@ TEST(KernelDescriptorFromPatchtokens, GivenImplicitArgsThenSetsProperPartsOfDesc
|
||||
kernelDescriptor.kernelAttributes.numArgsStateful = 0;
|
||||
kernelTokens.tokens.allocateStatelessPrintfSurface = nullptr;
|
||||
|
||||
iOpenCL::SPatchAllocateStatelessDefaultDeviceQueueSurface defaultDeviceQueueSurface = {};
|
||||
defaultDeviceQueueSurface.DataParamOffset = 2;
|
||||
defaultDeviceQueueSurface.DataParamSize = 3;
|
||||
defaultDeviceQueueSurface.SurfaceStateHeapOffset = 7;
|
||||
kernelTokens.tokens.allocateStatelessDefaultDeviceQueueSurface = &defaultDeviceQueueSurface;
|
||||
NEO::populateKernelDescriptor(kernelDescriptor, kernelTokens, 4);
|
||||
EXPECT_EQ(defaultDeviceQueueSurface.DataParamOffset, kernelDescriptor.payloadMappings.implicitArgs.deviceSideEnqueueDefaultQueueSurfaceAddress.stateless);
|
||||
EXPECT_EQ(defaultDeviceQueueSurface.DataParamSize, kernelDescriptor.payloadMappings.implicitArgs.deviceSideEnqueueDefaultQueueSurfaceAddress.pointerSize);
|
||||
EXPECT_EQ(defaultDeviceQueueSurface.SurfaceStateHeapOffset, kernelDescriptor.payloadMappings.implicitArgs.deviceSideEnqueueDefaultQueueSurfaceAddress.bindful);
|
||||
EXPECT_TRUE(NEO::isUndefinedOffset(kernelDescriptor.payloadMappings.implicitArgs.deviceSideEnqueueDefaultQueueSurfaceAddress.bindless));
|
||||
EXPECT_EQ(1u, kernelDescriptor.kernelAttributes.numArgsStateful);
|
||||
kernelDescriptor.kernelAttributes.numArgsStateful = 0;
|
||||
kernelTokens.tokens.allocateStatelessDefaultDeviceQueueSurface = nullptr;
|
||||
|
||||
EXPECT_EQ(0U, kernelDescriptor.kernelAttributes.perThreadSystemThreadSurfaceSize);
|
||||
EXPECT_TRUE(NEO::isUndefinedOffset(kernelDescriptor.payloadMappings.implicitArgs.systemThreadSurfaceAddress.stateless));
|
||||
EXPECT_EQ(0U, kernelDescriptor.payloadMappings.implicitArgs.systemThreadSurfaceAddress.pointerSize);
|
||||
@@ -374,9 +360,7 @@ TEST(KernelDescriptorFromPatchtokens, GivenImplicitArgsThenSetsProperPartsOfDesc
|
||||
kernelTokens.tokens.allocateSyncBuffer = &syncBuffer;
|
||||
NEO::populateKernelDescriptor(kernelDescriptor, kernelTokens, 4);
|
||||
EXPECT_TRUE(kernelDescriptor.kernelAttributes.flags.usesSyncBuffer);
|
||||
EXPECT_EQ(defaultDeviceQueueSurface.DataParamOffset, kernelDescriptor.payloadMappings.implicitArgs.syncBufferAddress.stateless);
|
||||
EXPECT_EQ(defaultDeviceQueueSurface.DataParamSize, kernelDescriptor.payloadMappings.implicitArgs.syncBufferAddress.pointerSize);
|
||||
EXPECT_EQ(defaultDeviceQueueSurface.SurfaceStateHeapOffset, kernelDescriptor.payloadMappings.implicitArgs.syncBufferAddress.bindful);
|
||||
|
||||
EXPECT_TRUE(NEO::isUndefinedOffset(kernelDescriptor.payloadMappings.implicitArgs.syncBufferAddress.bindless));
|
||||
EXPECT_EQ(1u, kernelDescriptor.kernelAttributes.numArgsStateful);
|
||||
kernelDescriptor.kernelAttributes.numArgsStateful = 0;
|
||||
@@ -767,35 +751,6 @@ TEST(KernelDescriptorFromPatchtokens, GivenKernelWithStatelessConstantMemoryObje
|
||||
EXPECT_TRUE(dst.payloadMappings.explicitArgs[1].getExtendedTypeInfo().needsPatch);
|
||||
}
|
||||
|
||||
TEST(KernelDescriptorFromPatchtokens, GivenKernelWithStatelessDeviceQueueKernelArgumentThenKernelDescriptorIsProperlyPopulated) {
|
||||
std::vector<uint8_t> storage;
|
||||
NEO::PatchTokenBinary::KernelFromPatchtokens kernelTokens = PatchTokensTestData::ValidEmptyKernel::create(storage);
|
||||
|
||||
iOpenCL::SPatchStatelessDeviceQueueKernelArgument deviceQueueArg = {};
|
||||
deviceQueueArg.Token = iOpenCL::PATCH_TOKEN_STATELESS_DEVICE_QUEUE_KERNEL_ARGUMENT;
|
||||
deviceQueueArg.ArgumentNumber = 1;
|
||||
deviceQueueArg.DataParamOffset = 2;
|
||||
deviceQueueArg.DataParamSize = 4;
|
||||
deviceQueueArg.SurfaceStateHeapOffset = 128;
|
||||
|
||||
kernelTokens.tokens.kernelArgs.resize(2);
|
||||
kernelTokens.tokens.kernelArgs[1].objectArg = &deviceQueueArg;
|
||||
NEO::KernelDescriptor dst = {};
|
||||
NEO::populateKernelDescriptor(dst, kernelTokens, sizeof(void *));
|
||||
EXPECT_EQ(1U, dst.kernelAttributes.numArgsToPatch);
|
||||
ASSERT_EQ(2U, dst.payloadMappings.explicitArgs.size());
|
||||
EXPECT_TRUE(dst.payloadMappings.explicitArgs[1].is<NEO::ArgDescriptor::argTPointer>());
|
||||
EXPECT_EQ(deviceQueueArg.DataParamOffset, dst.payloadMappings.explicitArgs[1].as<NEO::ArgDescPointer>().stateless);
|
||||
EXPECT_EQ(deviceQueueArg.DataParamSize, dst.payloadMappings.explicitArgs[1].as<NEO::ArgDescPointer>().pointerSize);
|
||||
EXPECT_EQ(deviceQueueArg.SurfaceStateHeapOffset, dst.payloadMappings.explicitArgs[1].as<NEO::ArgDescPointer>().bindful);
|
||||
EXPECT_TRUE(NEO::isUndefinedOffset(dst.payloadMappings.explicitArgs[1].as<NEO::ArgDescPointer>().bindless));
|
||||
EXPECT_EQ(NEO::KernelArgMetadata::AddrGlobal, dst.payloadMappings.explicitArgs[1].getTraits().addressQualifier);
|
||||
EXPECT_TRUE(dst.payloadMappings.explicitArgs[1].getExtendedTypeInfo().needsPatch);
|
||||
|
||||
EXPECT_FALSE(dst.payloadMappings.explicitArgs[0].getExtendedTypeInfo().isDeviceQueue);
|
||||
EXPECT_TRUE(dst.payloadMappings.explicitArgs[1].getExtendedTypeInfo().isDeviceQueue);
|
||||
}
|
||||
|
||||
TEST(KernelDescriptorFromPatchtokens, GivenKernelWithByValueArgumentsThenKernelDescriptorIsProperlyPopulated) {
|
||||
std::vector<uint8_t> storage;
|
||||
NEO::PatchTokenBinary::KernelFromPatchtokens kernelTokens = PatchTokensTestData::ValidEmptyKernel::create(storage);
|
||||
|
||||
Reference in New Issue
Block a user