Skip to content

Commit 51e888d

Browse files
committed
Add new arguments to GpgpuWalkerHelper<GfxFamily>::setGpgpuWalkerThreadData
Change-Id: I19e42a75f5224f6e3588c2c7be4a3451714bb5ef
1 parent 9e8a434 commit 51e888d

File tree

4 files changed

+10
-5
lines changed

4 files changed

+10
-5
lines changed

runtime/command_queue/gpgpu_walker.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,9 @@ class GpgpuWalkerHelper {
137137
const size_t startWorkGroups[3],
138138
const size_t numWorkGroups[3],
139139
const size_t localWorkSizesIn[3],
140-
uint32_t simd);
140+
uint32_t simd,
141+
uint32_t workDim,
142+
bool localIdsGeneration);
141143

142144
static void dispatchProfilingCommandsStart(
143145
HwTimeStamps &hwTimeStamps,

runtime/command_queue/gpgpu_walker.inl

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,9 @@ inline size_t GpgpuWalkerHelper<GfxFamily>::setGpgpuWalkerThreadData(
108108
const size_t startWorkGroups[3],
109109
const size_t numWorkGroups[3],
110110
const size_t localWorkSizesIn[3],
111-
uint32_t simd) {
111+
uint32_t simd,
112+
uint32_t workDim,
113+
bool localIdsGeneration) {
112114
WALKER_TYPE<GfxFamily> *pCmd = static_cast<WALKER_TYPE<GfxFamily> *>(pCmdData);
113115

114116
auto localWorkSize = localWorkSizesIn[0] * localWorkSizesIn[1] * localWorkSizesIn[2];
@@ -585,7 +587,7 @@ void GpgpuWalkerHelper<GfxFamily>::dispatchScheduler(
585587

586588
size_t globalOffsets[3] = {0, 0, 0};
587589
size_t workGroups[3] = {(scheduler.getGws() / scheduler.getLws()), 1, 1};
588-
auto localWorkSize = GpgpuWalkerHelper<GfxFamily>::setGpgpuWalkerThreadData(pGpGpuWalkerCmd, globalOffsets, globalOffsets, workGroups, localWorkSizes, simd);
590+
auto localWorkSize = GpgpuWalkerHelper<GfxFamily>::setGpgpuWalkerThreadData(pGpGpuWalkerCmd, globalOffsets, globalOffsets, workGroups, localWorkSizes, simd, 1, localIdsGeneration);
589591

590592
pGpGpuWalkerCmd->setIndirectDataStartAddress((uint32_t)offsetCrossThreadData);
591593
DEBUG_BREAK_IF(offsetCrossThreadData % 64 != 0);

runtime/command_queue/hardware_interface/hardware_interface.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ void HardwareInterface<GfxFamily>::dispatchWalker(
217217
size_t startWorkGroups[3] = {swgs.x, swgs.y, swgs.z};
218218
size_t numWorkGroups[3] = {nwgs.x, nwgs.y, nwgs.z};
219219
auto localWorkSize = GpgpuWalkerHelper<GfxFamily>::setGpgpuWalkerThreadData(pWalkerCmd, globalOffsets, startWorkGroups,
220-
numWorkGroups, localWorkSizes, simd);
220+
numWorkGroups, localWorkSizes, simd, dim, localIdsGeneration);
221221

222222
DEBUG_BREAK_IF(offsetCrossThreadData % 64 != 0);
223223
setOffsetCrossThreadData(pWalkerCmd, offsetCrossThreadData, interfaceDescriptorIndex);

unit_tests/command_queue/work_group_size_tests.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,8 @@ struct WorkGroupSizeBase {
8484
(workItems[0] + workGroupSize[0] - 1) / workGroupSize[0],
8585
(workItems[1] + workGroupSize[1] - 1) / workGroupSize[1],
8686
(workItems[2] + workGroupSize[2] - 1) / workGroupSize[2]};
87-
GpgpuWalkerHelper<FamilyType>::setGpgpuWalkerThreadData(&pCmd, globalOffsets, workGroupsStart, workGroupsNum, workGroupSize, simdSize);
87+
GpgpuWalkerHelper<FamilyType>::setGpgpuWalkerThreadData(&pCmd, globalOffsets, workGroupsStart, workGroupsNum,
88+
workGroupSize, simdSize, dims, true);
8889

8990
//And check if it is programmed correctly
9091
auto numWorkItems = computeWalkerWorkItems<FamilyType>(pCmd);

0 commit comments

Comments
 (0)