mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-08 05:56:36 +08:00
refactor: change data fields for encoder of additional walker fields
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
912bd8591a
commit
1e89058232
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2019-2024 Intel Corporation
|
||||
* Copyright (C) 2019-2025 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
@@ -84,12 +84,12 @@ inline void HardwareInterface<GfxFamily>::programWalker(
|
||||
commandQueue.getDevice());
|
||||
|
||||
EncodeWalkerArgs encodeWalkerArgs{
|
||||
kernel.getKernelInfo().kernelDescriptor, // kernelDescriptor
|
||||
kernel.getExecutionType(), // kernelExecutionType
|
||||
RequiredDispatchWalkOrder::none, // requiredDispatchWalkOrder
|
||||
0, // localRegionSize
|
||||
0, // maxFrontEndThreads
|
||||
false}; // requiredSystemFence
|
||||
kernel.getExecutionType(), // kernelExecutionType
|
||||
RequiredDispatchWalkOrder::none, // requiredDispatchWalkOrder
|
||||
0, // localRegionSize
|
||||
0, // maxFrontEndThreads
|
||||
false, // requiredSystemFence
|
||||
false}; // hasSample
|
||||
EncodeDispatchKernel<GfxFamily>::encodeAdditionalWalkerFields(rootDeviceEnvironment, walkerCmd, encodeWalkerArgs);
|
||||
*walkerCmdBuf = walkerCmd;
|
||||
}
|
||||
|
||||
@@ -146,12 +146,12 @@ inline void HardwareInterface<GfxFamily>::programWalker(
|
||||
auto maxFrontEndThreads = device.getDeviceInfo().maxFrontEndThreads;
|
||||
|
||||
EncodeWalkerArgs encodeWalkerArgs{
|
||||
kernelInfo.kernelDescriptor, // kernelDescriptor
|
||||
kernel.getExecutionType(), // kernelExecutionType
|
||||
kernelAttributes.dispatchWalkOrder, // requiredDispatchWalkOrder
|
||||
kernelAttributes.localRegionSize, // localRegionSize
|
||||
maxFrontEndThreads, // maxFrontEndThreads
|
||||
requiredSystemFence}; // requiredSystemFence
|
||||
kernel.getExecutionType(), // kernelExecutionType
|
||||
kernelAttributes.dispatchWalkOrder, // requiredDispatchWalkOrder
|
||||
kernelAttributes.localRegionSize, // localRegionSize
|
||||
maxFrontEndThreads, // maxFrontEndThreads
|
||||
requiredSystemFence, // requiredSystemFence
|
||||
kernelInfo.kernelDescriptor.kernelAttributes.flags.hasSample}; // hasSample
|
||||
|
||||
EncodeDispatchKernel<GfxFamily>::template encodeAdditionalWalkerFields<WalkerType>(rootDeviceEnvironment, walkerCmd, encodeWalkerArgs);
|
||||
EncodeDispatchKernel<GfxFamily>::template encodeWalkerPostSyncFields<WalkerType>(walkerCmd, encodeWalkerArgs);
|
||||
|
||||
@@ -25,14 +25,13 @@ XE2_HPG_CORETEST_F(WalkerDispatchTestsXe2HpGCore, whenEncodeAdditionalWalkerFiel
|
||||
MockExecutionEnvironment executionEnvironment;
|
||||
auto walkerCmd = FamilyType::cmdInitGpgpuWalker;
|
||||
|
||||
KernelDescriptor kernelDescriptor;
|
||||
EncodeWalkerArgs walkerArgs{
|
||||
kernelDescriptor, // kernelDescriptor
|
||||
KernelExecutionType::concurrent, // kernelExecutionType
|
||||
NEO::RequiredDispatchWalkOrder::none, // requiredDispatchWalkOrder
|
||||
0, // localRegionSize
|
||||
113, // maxFrontEndThreads
|
||||
true}; // requiredSystemFence
|
||||
true, // requiresMemoryFence
|
||||
false}; // hasSample
|
||||
{
|
||||
EncodeDispatchKernel<FamilyType>::encodeComputeDispatchAllWalker(walkerCmd, &walkerCmd.getInterfaceDescriptor(), *executionEnvironment.rootDeviceEnvironments[0], walkerArgs);
|
||||
EXPECT_TRUE(walkerCmd.getComputeDispatchAllWalkerEnable());
|
||||
|
||||
@@ -26,14 +26,13 @@ XE3_CORETEST_F(WalkerDispatchTestsXe3Core, whenEncodeAdditionalWalkerFieldsIsCal
|
||||
MockExecutionEnvironment executionEnvironment;
|
||||
auto walkerCmd = FamilyType::cmdInitGpgpuWalker;
|
||||
|
||||
KernelDescriptor kernelDescriptor;
|
||||
EncodeWalkerArgs walkerArgs{
|
||||
kernelDescriptor, // kernelDescriptor
|
||||
KernelExecutionType::concurrent, // kernelExecutionType
|
||||
NEO::RequiredDispatchWalkOrder::none, // requiredDispatchWalkOrder
|
||||
0, // localRegionSize
|
||||
113, // maxFrontEndThreads
|
||||
true}; // requiredSystemFence
|
||||
true, // requiredSystemFence
|
||||
false}; // hasSample
|
||||
{
|
||||
EncodeDispatchKernel<FamilyType>::encodeComputeDispatchAllWalker(walkerCmd, &walkerCmd.getInterfaceDescriptor(), *executionEnvironment.rootDeviceEnvironments[0], walkerArgs);
|
||||
EXPECT_TRUE(walkerCmd.getComputeDispatchAllWalkerEnable());
|
||||
@@ -102,24 +101,23 @@ XE3_CORETEST_F(WalkerDispatchTestsXe3Core, givenHasSampleSetWhenEncodingExtraPar
|
||||
MockExecutionEnvironment mockExecutionEnvironment{};
|
||||
auto &rootDeviceEnvironment = *mockExecutionEnvironment.rootDeviceEnvironments[0];
|
||||
|
||||
KernelDescriptor kernelDescriptor;
|
||||
EncodeWalkerArgs walkerArgs{
|
||||
kernelDescriptor, // kernelDescriptor
|
||||
KernelExecutionType::defaultType, // kernelExecutionType
|
||||
NEO::RequiredDispatchWalkOrder::none, // requiredDispatchWalkOrder
|
||||
0, // localRegionSize
|
||||
0, // maxFrontEndThreads
|
||||
false}; // requiredSystemFence
|
||||
false, // requiredSystemFence
|
||||
false}; // hasSample
|
||||
|
||||
{
|
||||
kernelDescriptor.kernelAttributes.flags.hasSample = false;
|
||||
walkerArgs.hasSample = false;
|
||||
EncodeDispatchKernel<FamilyType>::encodeAdditionalWalkerFields(rootDeviceEnvironment, walkerCmd, walkerArgs);
|
||||
EXPECT_NE(DISPATCH_WALK_ORDER::DISPATCH_WALK_ORDER_MORTON_WALK, walkerCmd.getDispatchWalkOrder());
|
||||
EXPECT_EQ(THREAD_GROUP_BATCH_SIZE::THREAD_GROUP_BATCH_SIZE_TG_BATCH_1, walkerCmd.getThreadGroupBatchSize());
|
||||
}
|
||||
|
||||
{
|
||||
kernelDescriptor.kernelAttributes.flags.hasSample = true;
|
||||
walkerArgs.hasSample = true;
|
||||
EncodeDispatchKernel<FamilyType>::encodeAdditionalWalkerFields(rootDeviceEnvironment, walkerCmd, walkerArgs);
|
||||
EXPECT_EQ(DISPATCH_WALK_ORDER::DISPATCH_WALK_ORDER_MORTON_WALK, walkerCmd.getDispatchWalkOrder());
|
||||
EXPECT_EQ(THREAD_GROUP_BATCH_SIZE::THREAD_GROUP_BATCH_SIZE_TG_BATCH_4, walkerCmd.getThreadGroupBatchSize());
|
||||
|
||||
Reference in New Issue
Block a user