refactor: pass WG count to helper method

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
Bartosz Dunajski
2024-07-24 12:03:48 +00:00
committed by Compute-Runtime-Automation
parent 42bf58a800
commit 9c2acfe5b2
5 changed files with 8 additions and 8 deletions

View File

@@ -55,7 +55,7 @@ template <typename GfxFamily>
using POST_SYNC_OPERATION = typename PIPE_CONTROL<GfxFamily>::POST_SYNC_OPERATION;
template <typename GfxFamily, typename WalkerType>
void appendWalkerFields(WalkerType &walkerCmd, uint32_t tileCount);
void appendWalkerFields(WalkerType &walkerCmd, uint32_t tileCount, uint32_t workgroupCount);
template <typename Command>
Command *putCommand(void *&inputAddress, uint32_t &totalBytesProgrammed) {
@@ -509,7 +509,7 @@ void *programPartitionedWalker(void *&inputAddress, uint32_t &totalBytesProgramm
inputWalker->setWorkloadPartitionEnable(true);
auto workgroupCount = 0u;
uint32_t workgroupCount = 0;
if (partitionType == WalkerType::PARTITION_TYPE::PARTITION_TYPE_X) {
workgroupCount = inputWalker->getThreadGroupIdXDimension();
} else if (partitionType == WalkerType::PARTITION_TYPE::PARTITION_TYPE_Y) {
@@ -523,9 +523,9 @@ void *programPartitionedWalker(void *&inputAddress, uint32_t &totalBytesProgramm
} else {
inputWalker->setPartitionSize(Math::divideAndRoundUp(workgroupCount, partitionCount));
}
}
appendWalkerFields<GfxFamily, WalkerType>(*inputWalker, tileCount);
appendWalkerFields<GfxFamily, WalkerType>(*inputWalker, tileCount, workgroupCount);
}
*computeWalker = *inputWalker;

View File

@@ -9,6 +9,6 @@
namespace WalkerPartition {
template <typename GfxFamily, typename WalkerType>
void appendWalkerFields(WalkerType &walkerCmd, uint32_t tileCount) {
void appendWalkerFields(WalkerType &walkerCmd, uint32_t tileCount, uint32_t workgroupCount) {
}
} // namespace WalkerPartition

View File

@@ -26,4 +26,4 @@ template void ImplicitScalingDispatch<Family>::dispatchCommands<DefaultWalkerTyp
template size_t ImplicitScalingDispatch<Family>::getSize<DefaultWalkerType>(bool apiSelfCleanup, bool preferStaticPartitioning, const DeviceBitfield &devices, const Vec3<size_t> &groupStart, const Vec3<size_t> &groupCount);
} // namespace NEO
template void WalkerPartition::appendWalkerFields<NEO::Family, NEO::DefaultWalkerType>(NEO::DefaultWalkerType &walkerCmd, uint32_t tileCount);
template void WalkerPartition::appendWalkerFields<NEO::Family, NEO::DefaultWalkerType>(NEO::DefaultWalkerType &walkerCmd, uint32_t tileCount, uint32_t workgroupCount);

View File

@@ -39,4 +39,4 @@ template void ImplicitScalingDispatch<Family>::dispatchCommands<DefaultWalkerTyp
template size_t ImplicitScalingDispatch<Family>::getSize<DefaultWalkerType>(bool apiSelfCleanup, bool preferStaticPartitioning, const DeviceBitfield &devices, const Vec3<size_t> &groupStart, const Vec3<size_t> &groupCount);
} // namespace NEO
template void WalkerPartition::appendWalkerFields<NEO::Family, NEO::DefaultWalkerType>(NEO::DefaultWalkerType &walkerCmd, uint32_t tileCount);
template void WalkerPartition::appendWalkerFields<NEO::Family, NEO::DefaultWalkerType>(NEO::DefaultWalkerType &walkerCmd, uint32_t tileCount, uint32_t workgroupCount);

View File

@@ -26,4 +26,4 @@ template void ImplicitScalingDispatch<Family>::dispatchCommands<DefaultWalkerTyp
template size_t ImplicitScalingDispatch<Family>::getSize<DefaultWalkerType>(bool apiSelfCleanup, bool preferStaticPartitioning, const DeviceBitfield &devices, const Vec3<size_t> &groupStart, const Vec3<size_t> &groupCount);
} // namespace NEO
template void WalkerPartition::appendWalkerFields<NEO::Family, NEO::DefaultWalkerType>(NEO::DefaultWalkerType &walkerCmd, uint32_t tileCount);
template void WalkerPartition::appendWalkerFields<NEO::Family, NEO::DefaultWalkerType>(NEO::DefaultWalkerType &walkerCmd, uint32_t tileCount, uint32_t workgroupCount);