refactor: change compute walker to defaultWalkerType

Related-To: NEO-10641
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
This commit is contained in:
Kamil Kopryk
2024-03-12 01:03:56 +00:00
committed by Compute-Runtime-Automation
parent add1ff4902
commit 626b3846b0
11 changed files with 271 additions and 272 deletions

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2022-2023 Intel Corporation * Copyright (C) 2022-2024 Intel Corporation
* *
* SPDX-License-Identifier: MIT * SPDX-License-Identifier: MIT
* *
@@ -89,7 +89,7 @@ struct AppendMemoryCopyMultiPacketEventFixture : public DeviceFixture {
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryCopyThreeKernels(CopyTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryCopyThreeKernels(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -128,21 +128,21 @@ void testSingleTileAppendMemoryCopyThreeKernels(CopyTestInput &input, TestExpect
cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0), cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0),
commandList.commandContainer.getCommandStream()->getUsed())); commandList.commandContainer.getCommandStream()->getUsed()));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(3u, itorWalkers.size()); ASSERT_EQ(3u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto secondWalker = itorWalkers[1]; auto secondWalker = itorWalkers[1];
auto thirdWalker = itorWalkers[2]; auto thirdWalker = itorWalkers[2];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*secondWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*secondWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*thirdWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*thirdWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(thirdKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(thirdKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -172,7 +172,7 @@ void testSingleTileAppendMemoryCopyThreeKernels(CopyTestInput &input, TestExpect
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryCopyThreeKernelsAndL3Flush(CopyTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryCopyThreeKernelsAndL3Flush(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using POST_SYNC_OPERATION = typename FamilyType::PIPE_CONTROL::POST_SYNC_OPERATION; using POST_SYNC_OPERATION = typename FamilyType::PIPE_CONTROL::POST_SYNC_OPERATION;
@@ -214,21 +214,21 @@ void testSingleTileAppendMemoryCopyThreeKernelsAndL3Flush(CopyTestInput &input,
cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0), cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0),
commandList.commandContainer.getCommandStream()->getUsed())); commandList.commandContainer.getCommandStream()->getUsed()));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(3u, itorWalkers.size()); ASSERT_EQ(3u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto secondWalker = itorWalkers[1]; auto secondWalker = itorWalkers[1];
auto thirdWalker = itorWalkers[2]; auto thirdWalker = itorWalkers[2];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*secondWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*secondWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*thirdWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*thirdWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(thirdKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(thirdKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -282,7 +282,7 @@ void testSingleTileAppendMemoryCopyThreeKernelsAndL3Flush(CopyTestInput &input,
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryCopySingleKernel(CopyTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryCopySingleKernel(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -318,11 +318,11 @@ void testSingleTileAppendMemoryCopySingleKernel(CopyTestInput &input, TestExpect
cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0), cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0),
commandList.commandContainer.getCommandStream()->getUsed())); commandList.commandContainer.getCommandStream()->getUsed()));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -352,7 +352,7 @@ void testSingleTileAppendMemoryCopySingleKernel(CopyTestInput &input, TestExpect
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryCopySingleKernelAndL3Flush(CopyTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryCopySingleKernelAndL3Flush(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using POST_SYNC_OPERATION = typename FamilyType::PIPE_CONTROL::POST_SYNC_OPERATION; using POST_SYNC_OPERATION = typename FamilyType::PIPE_CONTROL::POST_SYNC_OPERATION;
@@ -392,11 +392,11 @@ void testSingleTileAppendMemoryCopySingleKernelAndL3Flush(CopyTestInput &input,
cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0), cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0),
commandList.commandContainer.getCommandStream()->getUsed())); commandList.commandContainer.getCommandStream()->getUsed()));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -452,7 +452,7 @@ void testSingleTileAppendMemoryCopySingleKernelAndL3Flush(CopyTestInput &input,
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryCopySignalScopeEventToSubDevice(CopyTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryCopySignalScopeEventToSubDevice(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION; using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -481,7 +481,7 @@ void testSingleTileAppendMemoryCopySignalScopeEventToSubDevice(CopyTestInput &in
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalker = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalker = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), itorWalker); ASSERT_NE(cmdList.end(), itorWalker);
auto pipeControls = findAll<PIPE_CONTROL *>(itorWalker, cmdList.end()); auto pipeControls = findAll<PIPE_CONTROL *>(itorWalker, cmdList.end());
@@ -508,7 +508,7 @@ void testSingleTileAppendMemoryCopySignalScopeEventToSubDevice(CopyTestInput &in
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testMultiTileAppendMemoryCopyThreeKernels(CopyTestInput &input, TestExpectedValues &arg) { void testMultiTileAppendMemoryCopyThreeKernels(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -548,21 +548,21 @@ void testMultiTileAppendMemoryCopyThreeKernels(CopyTestInput &input, TestExpecte
cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0), cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0),
commandList.commandContainer.getCommandStream()->getUsed())); commandList.commandContainer.getCommandStream()->getUsed()));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(3u, itorWalkers.size()); ASSERT_EQ(3u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto secondWalker = itorWalkers[1]; auto secondWalker = itorWalkers[1];
auto thirdWalker = itorWalkers[2]; auto thirdWalker = itorWalkers[2];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*secondWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*secondWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*thirdWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*thirdWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(thirdKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(thirdKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -597,7 +597,7 @@ void testMultiTileAppendMemoryCopyThreeKernels(CopyTestInput &input, TestExpecte
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testMultiTileAppendMemoryCopyThreeKernelsAndL3Flush(CopyTestInput &input, TestExpectedValues &arg) { void testMultiTileAppendMemoryCopyThreeKernelsAndL3Flush(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION; using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION;
@@ -645,21 +645,21 @@ void testMultiTileAppendMemoryCopyThreeKernelsAndL3Flush(CopyTestInput &input, T
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(3u, itorWalkers.size()); ASSERT_EQ(3u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto secondWalker = itorWalkers[1]; auto secondWalker = itorWalkers[1];
auto thirdWalker = itorWalkers[2]; auto thirdWalker = itorWalkers[2];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*secondWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*secondWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*thirdWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*thirdWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(thirdKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(thirdKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -725,7 +725,7 @@ void testMultiTileAppendMemoryCopyThreeKernelsAndL3Flush(CopyTestInput &input, T
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testMultiTileAppendMemoryCopySingleKernel(CopyTestInput &input, TestExpectedValues &arg) { void testMultiTileAppendMemoryCopySingleKernel(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -762,11 +762,11 @@ void testMultiTileAppendMemoryCopySingleKernel(CopyTestInput &input, TestExpecte
cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0), cmdList, ptrOffset(commandList.commandContainer.getCommandStream()->getCpuBase(), 0),
commandList.commandContainer.getCommandStream()->getUsed())); commandList.commandContainer.getCommandStream()->getUsed()));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -799,7 +799,7 @@ void testMultiTileAppendMemoryCopySingleKernel(CopyTestInput &input, TestExpecte
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testMultiTileAppendMemoryCopySingleKernelAndL3Flush(CopyTestInput &input, TestExpectedValues &arg) { void testMultiTileAppendMemoryCopySingleKernelAndL3Flush(CopyTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION; using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION;
@@ -844,11 +844,11 @@ void testMultiTileAppendMemoryCopySingleKernelAndL3Flush(CopyTestInput &input, T
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());

View File

@@ -86,7 +86,7 @@ struct AppendFillMultiPacketEventFixture : public AppendFillFixture {
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryFillManyImmediateKernels(FillTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryFillManyImmediateKernels(FillTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -127,16 +127,16 @@ void testSingleTileAppendMemoryFillManyImmediateKernels(FillTestInput &input, Te
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(2u, itorWalkers.size()); ASSERT_EQ(2u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto secondWalker = itorWalkers[1]; auto secondWalker = itorWalkers[1];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*secondWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*secondWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -166,7 +166,7 @@ void testSingleTileAppendMemoryFillManyImmediateKernels(FillTestInput &input, Te
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryFillManyKernels(FillTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryFillManyKernels(FillTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -207,16 +207,16 @@ void testSingleTileAppendMemoryFillManyKernels(FillTestInput &input, TestExpecte
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(2u, itorWalkers.size()); ASSERT_EQ(2u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto secondWalker = itorWalkers[1]; auto secondWalker = itorWalkers[1];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*secondWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*secondWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -246,7 +246,7 @@ void testSingleTileAppendMemoryFillManyKernels(FillTestInput &input, TestExpecte
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryFillManyKernelsAndL3Flush(FillTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryFillManyKernelsAndL3Flush(FillTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -288,16 +288,16 @@ void testSingleTileAppendMemoryFillManyKernelsAndL3Flush(FillTestInput &input, T
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(2u, itorWalkers.size()); ASSERT_EQ(2u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto secondWalker = itorWalkers[1]; auto secondWalker = itorWalkers[1];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*secondWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*secondWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -327,7 +327,7 @@ void testSingleTileAppendMemoryFillManyKernelsAndL3Flush(FillTestInput &input, T
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryFillSingleKernel(FillTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryFillSingleKernel(FillTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -369,11 +369,11 @@ void testSingleTileAppendMemoryFillSingleKernel(FillTestInput &input, TestExpect
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -403,7 +403,7 @@ void testSingleTileAppendMemoryFillSingleKernel(FillTestInput &input, TestExpect
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testSingleTileAppendMemoryFillSingleKernelAndL3Flush(FillTestInput &input, TestExpectedValues &arg) { void testSingleTileAppendMemoryFillSingleKernelAndL3Flush(FillTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
@@ -448,11 +448,11 @@ void testSingleTileAppendMemoryFillSingleKernelAndL3Flush(FillTestInput &input,
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -508,7 +508,7 @@ void testSingleTileAppendMemoryFillSingleKernelAndL3Flush(FillTestInput &input,
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testMultiTileAppendMemoryFillManyKernels(FillTestInput &input, TestExpectedValues &arg) { void testMultiTileAppendMemoryFillManyKernels(FillTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION; using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION;
@@ -560,16 +560,16 @@ void testMultiTileAppendMemoryFillManyKernels(FillTestInput &input, TestExpected
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(2u, itorWalkers.size()); ASSERT_EQ(2u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto secondWalker = itorWalkers[1]; auto secondWalker = itorWalkers[1];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
walkerCmd = genCmdCast<COMPUTE_WALKER *>(*secondWalker); walkerCmd = genCmdCast<DefaultWalkerType *>(*secondWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(secondKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -623,7 +623,7 @@ void testMultiTileAppendMemoryFillManyKernels(FillTestInput &input, TestExpected
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testMultiTileAppendMemoryFillSingleKernelAndL3Flush(FillTestInput &input, TestExpectedValues &arg) { void testMultiTileAppendMemoryFillSingleKernelAndL3Flush(FillTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
@@ -668,11 +668,11 @@ void testMultiTileAppendMemoryFillSingleKernelAndL3Flush(FillTestInput &input, T
ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore), ptrOffset(commandContainer.getCommandStream()->getCpuBase(), usedBefore),
usedAfter - usedBefore)); usedAfter - usedBefore));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());

View File

@@ -305,7 +305,7 @@ struct CommandListAppendLaunchKernelCompactL3FlushEventFixture : public ModuleFi
debugManager.flags.CreateMultipleSubDevices.set(2); debugManager.flags.CreateMultipleSubDevices.set(2);
debugManager.flags.EnableImplicitScaling.set(1); debugManager.flags.EnableImplicitScaling.set(1);
arg.workloadPartition = true; arg.workloadPartition = true;
arg.expectDcFlush = 2; // DC Flush multi-tile platforms require DC Flush + x-tile sync after implicit scaling COMPUTE_WALKER arg.expectDcFlush = 2; // DC Flush multi-tile platforms require DC Flush + x-tile sync after implicit scaling DefaultWalkerType
input.packetOffsetMul = 2; input.packetOffsetMul = 2;
} else { } else {
arg.expectDcFlush = 1; arg.expectDcFlush = 1;
@@ -320,7 +320,7 @@ struct CommandListAppendLaunchKernelCompactL3FlushEventFixture : public ModuleFi
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testAppendLaunchKernelAndL3Flush(AppendKernelTestInput &input, TestExpectedValues &arg) { void testAppendLaunchKernelAndL3Flush(AppendKernelTestInput &input, TestExpectedValues &arg) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using POST_SYNC_OPERATION = typename FamilyType::PIPE_CONTROL::POST_SYNC_OPERATION; using POST_SYNC_OPERATION = typename FamilyType::PIPE_CONTROL::POST_SYNC_OPERATION;
@@ -361,11 +361,11 @@ struct CommandListAppendLaunchKernelCompactL3FlushEventFixture : public ModuleFi
cmdList, ptrOffset(commandList->commandContainer.getCommandStream()->getCpuBase(), 0), cmdList, ptrOffset(commandList->commandContainer.getCommandStream()->getCpuBase(), 0),
commandList->commandContainer.getCommandStream()->getUsed())); commandList->commandContainer.getCommandStream()->getUsed()));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(arg.expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress()); EXPECT_EQ(firstKernelEventAddress, walkerCmd->getPostSync().getDestinationAddress());
@@ -564,7 +564,7 @@ struct CommandListSignalAllEventPacketFixture : public ModuleFixture {
template <GFXCORE_FAMILY gfxCoreFamily> template <GFXCORE_FAMILY gfxCoreFamily>
void testAppendKernel(ze_event_pool_flags_t eventPoolFlags) { void testAppendKernel(ze_event_pool_flags_t eventPoolFlags) {
using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily; using FamilyType = typename NEO::GfxFamilyMapper<gfxCoreFamily>::GfxFamily;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using OPERATION = typename POSTSYNC_DATA::OPERATION; using OPERATION = typename POSTSYNC_DATA::OPERATION;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -601,7 +601,7 @@ struct CommandListSignalAllEventPacketFixture : public ModuleFixture {
ptrOffset(cmdStream->getCpuBase(), sizeBefore), ptrOffset(cmdStream->getCpuBase(), sizeBefore),
(sizeAfter - sizeBefore))); (sizeAfter - sizeBefore)));
auto itorWalkers = findAll<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itorWalkers = findAll<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_EQ(1u, itorWalkers.size()); ASSERT_EQ(1u, itorWalkers.size());
auto firstWalker = itorWalkers[0]; auto firstWalker = itorWalkers[0];
@@ -614,7 +614,7 @@ struct CommandListSignalAllEventPacketFixture : public ModuleFixture {
expectedWalkerPostSyncOp = 1; expectedWalkerPostSyncOp = 1;
} }
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*firstWalker); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*firstWalker);
EXPECT_EQ(static_cast<OPERATION>(expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation()); EXPECT_EQ(static_cast<OPERATION>(expectedWalkerPostSyncOp), walkerCmd->getPostSync().getOperation());
uint32_t extraCleanupStoreDataImm = 0; uint32_t extraCleanupStoreDataImm = 0;
@@ -1576,7 +1576,7 @@ using RayTracingCmdListTest = Test<RayTracingCmdListFixture>;
template <typename FamilyType> template <typename FamilyType>
void findStateCacheFlushPipeControlAfterWalker(LinearStream &cmdStream, size_t offset, size_t size) { void findStateCacheFlushPipeControlAfterWalker(LinearStream &cmdStream, size_t offset, size_t size) {
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer( ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(
@@ -1584,7 +1584,7 @@ void findStateCacheFlushPipeControlAfterWalker(LinearStream &cmdStream, size_t o
ptrOffset(cmdStream.getCpuBase(), offset), ptrOffset(cmdStream.getCpuBase(), offset),
size)); size));
auto walkerIt = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerIt = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerIt); ASSERT_NE(cmdList.end(), walkerIt);
auto pcItorList = findAll<PIPE_CONTROL *>(walkerIt, cmdList.end()); auto pcItorList = findAll<PIPE_CONTROL *>(walkerIt, cmdList.end());

View File

@@ -1349,7 +1349,7 @@ HWTEST2_F(InOrderCmdListTests, givenCmdsChainingFromAppendCopyAndFlushRequiredWh
HWTEST2_F(InOrderCmdListTests, givenEventWithRequiredPipeControlWhenDispatchingCopyThenSignalInOrderAllocation, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenEventWithRequiredPipeControlWhenDispatchingCopyThenSignalInOrderAllocation, IsAtLeastXeHpCore) {
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
@@ -1375,10 +1375,10 @@ HWTEST2_F(InOrderCmdListTests, givenEventWithRequiredPipeControlWhenDispatchingC
} else { } else {
EXPECT_EQ(cmdList.end(), sdiItor); EXPECT_EQ(cmdList.end(), sdiItor);
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
EXPECT_EQ(POSTSYNC_DATA::OPERATION_WRITE_IMMEDIATE_DATA, postSync.getOperation()); EXPECT_EQ(POSTSYNC_DATA::OPERATION_WRITE_IMMEDIATE_DATA, postSync.getOperation());
@@ -1391,7 +1391,7 @@ HWTEST2_F(InOrderCmdListTests, givenEventWithRequiredPipeControlWhenDispatchingC
HWTEST2_F(InOrderCmdListTests, givenEventWithRequiredPipeControlAndAllocFlushWhenDispatchingCopyThenSignalInOrderAllocation, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenEventWithRequiredPipeControlAndAllocFlushWhenDispatchingCopyThenSignalInOrderAllocation, IsAtLeastXeHpCore) {
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
auto eventPool = createEvents<FamilyType>(1, false); auto eventPool = createEvents<FamilyType>(1, false);
@@ -1416,9 +1416,9 @@ HWTEST2_F(InOrderCmdListTests, givenEventWithRequiredPipeControlAndAllocFlushWhe
EXPECT_EQ(immCmdList->inOrderExecInfo->getBaseDeviceAddress(), sdiCmd->getAddress()); EXPECT_EQ(immCmdList->inOrderExecInfo->getBaseDeviceAddress(), sdiCmd->getAddress());
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
EXPECT_NE(immCmdList->inOrderExecInfo->getBaseDeviceAddress(), postSync.getDestinationAddress()); EXPECT_NE(immCmdList->inOrderExecInfo->getBaseDeviceAddress(), postSync.getDestinationAddress());
@@ -1653,7 +1653,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenAddingRelaxedOrderingEventsTh
} }
HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingWalkerThenSignalSyncAllocation, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingWalkerThenSignalSyncAllocation, IsAtLeastXeHpCore) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -1678,10 +1678,10 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingWalkerThenSignalSy
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed())); ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed()));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
EXPECT_EQ(POSTSYNC_DATA::OPERATION_WRITE_IMMEDIATE_DATA, postSync.getOperation()); EXPECT_EQ(POSTSYNC_DATA::OPERATION_WRITE_IMMEDIATE_DATA, postSync.getOperation());
@@ -1700,10 +1700,10 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingWalkerThenSignalSy
ptrOffset(cmdStream->getCpuBase(), offset), ptrOffset(cmdStream->getCpuBase(), offset),
(cmdStream->getUsed() - offset))); (cmdStream->getUsed() - offset)));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
if (isCompactEvent) { if (isCompactEvent) {
@@ -1750,7 +1750,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingWalkerThenSignalSy
HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingTimestampEventThenClearAndChainWithSyncAllocSignaling, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingTimestampEventThenClearAndChainWithSyncAllocSignaling, IsAtLeastXeHpCore) {
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
@@ -1775,10 +1775,10 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingTimestampEventThen
EXPECT_EQ(0u, sdiCmd->getStoreQword()); EXPECT_EQ(0u, sdiCmd->getStoreQword());
EXPECT_EQ(Event::STATE_CLEARED, sdiCmd->getDataDword0()); EXPECT_EQ(Event::STATE_CLEARED, sdiCmd->getDataDword0());
auto walkerItor = find<COMPUTE_WALKER *>(sdiItor, cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(sdiItor, cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
auto eventBaseGpuVa = events[0]->getPacketAddress(device); auto eventBaseGpuVa = events[0]->getPacketAddress(device);
@@ -1815,7 +1815,7 @@ HWTEST2_F(InOrderCmdListTests, givenDebugFlagSetWhenAskingIfSkipInOrderNonWalker
HWTEST2_F(InOrderCmdListTests, givenRelaxedOrderingWhenProgrammingTimestampEventThenClearAndChainWithSyncAllocSignalingAsTwoSeparateSubmissions, IsAtLeastXeHpcCore) { HWTEST2_F(InOrderCmdListTests, givenRelaxedOrderingWhenProgrammingTimestampEventThenClearAndChainWithSyncAllocSignalingAsTwoSeparateSubmissions, IsAtLeastXeHpcCore) {
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
class MyMockCmdList : public WhiteBox<L0::CommandListCoreFamilyImmediate<gfxCoreFamily>> { class MyMockCmdList : public WhiteBox<L0::CommandListCoreFamilyImmediate<gfxCoreFamily>> {
@@ -1885,10 +1885,10 @@ HWTEST2_F(InOrderCmdListTests, givenRelaxedOrderingWhenProgrammingTimestampEvent
EXPECT_TRUE(sdiOffset >= immCmdList->flushData[0]); EXPECT_TRUE(sdiOffset >= immCmdList->flushData[0]);
EXPECT_TRUE(sdiOffset < immCmdList->flushData[1]); EXPECT_TRUE(sdiOffset < immCmdList->flushData[1]);
auto walkerItor = find<COMPUTE_WALKER *>(sdiItor, cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(sdiItor, cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
auto eventBaseGpuVa = events[0]->getPacketAddress(device); auto eventBaseGpuVa = events[0]->getPacketAddress(device);
@@ -1978,7 +1978,7 @@ HWTEST2_F(InOrderCmdListTests, givenDebugFlagSetWhenChainingWithRelaxedOrderingT
HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingRegularEventThenClearAndChainWithSyncAllocSignaling, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingRegularEventThenClearAndChainWithSyncAllocSignaling, IsAtLeastXeHpCore) {
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
@@ -2004,10 +2004,10 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingRegularEventThenCl
EXPECT_EQ(0u, sdiCmd->getStoreQword()); EXPECT_EQ(0u, sdiCmd->getStoreQword());
EXPECT_EQ(Event::STATE_CLEARED, sdiCmd->getDataDword0()); EXPECT_EQ(Event::STATE_CLEARED, sdiCmd->getDataDword0());
auto walkerItor = find<COMPUTE_WALKER *>(sdiItor, cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(sdiItor, cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
auto eventBaseGpuVa = events[0]->getPacketAddress(device); auto eventBaseGpuVa = events[0]->getPacketAddress(device);
@@ -2635,7 +2635,7 @@ HWTEST2_F(InOrderCmdListTests, givenEventGeneratedByRegularCmdListWhenWaitingFro
} }
HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingKernelSplitThenDontSignalFromWalker, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingKernelSplitThenDontSignalFromWalker, IsAtLeastXeHpCore) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
@@ -2652,18 +2652,18 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingKernelSplitThenDon
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed())); ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed()));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
uint32_t walkersFound = 0; uint32_t walkersFound = 0;
while (cmdList.end() != walkerItor) { while (cmdList.end() != walkerItor) {
walkersFound++; walkersFound++;
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
EXPECT_EQ(POSTSYNC_DATA::OPERATION_NO_WRITE, postSync.getOperation()); EXPECT_EQ(POSTSYNC_DATA::OPERATION_NO_WRITE, postSync.getOperation());
walkerItor = find<COMPUTE_WALKER *>(++walkerItor, cmdList.end()); walkerItor = find<DefaultWalkerType *>(++walkerItor, cmdList.end());
} }
EXPECT_TRUE(walkersFound > 1); EXPECT_TRUE(walkersFound > 1);
@@ -2708,7 +2708,7 @@ HWTEST2_F(InOrderCmdListTests, givenCopyOnlyInOrderModeWhenProgrammingCopyThenSi
} }
HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingComputeCopyThenDontSingalFromSdi, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingComputeCopyThenDontSingalFromSdi, IsAtLeastXeHpCore) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
@@ -2722,9 +2722,9 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingComputeCopyThenDon
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed())); ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed()));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
@@ -2737,7 +2737,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingComputeCopyThenDon
} }
HWTEST2_F(InOrderCmdListTests, givenAlocFlushRequiredhenProgrammingComputeCopyThenSingalFromSdi, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenAlocFlushRequiredhenProgrammingComputeCopyThenSingalFromSdi, IsAtLeastXeHpCore) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
@@ -2750,10 +2750,10 @@ HWTEST2_F(InOrderCmdListTests, givenAlocFlushRequiredhenProgrammingComputeCopyTh
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed())); ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed()));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
EXPECT_EQ(0u, postSync.getDestinationAddress()); EXPECT_EQ(0u, postSync.getDestinationAddress());
@@ -2822,7 +2822,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingFillWithSplitAndOu
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed())); ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed()));
auto walkerItor = find<typename FamilyType::COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<typename FamilyType::DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto pcItor = find<PIPE_CONTROL *>(walkerItor, cmdList.end()); auto pcItor = find<PIPE_CONTROL *>(walkerItor, cmdList.end());
@@ -2871,7 +2871,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingFillWithSplitAndWi
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed())); ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed()));
auto walkerItor = find<typename FamilyType::COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<typename FamilyType::DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto pcItor = find<PIPE_CONTROL *>(walkerItor, cmdList.end()); auto pcItor = find<PIPE_CONTROL *>(walkerItor, cmdList.end());
@@ -2898,7 +2898,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingFillWithSplitAndWi
HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingFillWithoutSplitThenSignalByWalker, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingFillWithoutSplitThenSignalByWalker, IsAtLeastXeHpCore) {
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
@@ -2913,10 +2913,10 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingFillWithoutSplitTh
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed())); ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed()));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
@@ -3088,7 +3088,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingCounterWithOverflo
HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingCounterWithOverflowThenHandleItCorrectly, IsAtLeastXeHpCore) { HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingCounterWithOverflowThenHandleItCorrectly, IsAtLeastXeHpCore) {
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
auto immCmdList = createImmCmdList<gfxCoreFamily>(); auto immCmdList = createImmCmdList<gfxCoreFamily>();
@@ -3109,7 +3109,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingCounterWithOverflo
GenCmdList cmdList; GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed())); ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(cmdList, cmdStream->getCpuBase(), cmdStream->getUsed()));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto semaphoreItor = find<MI_SEMAPHORE_WAIT *>(walkerItor, cmdList.end()); auto semaphoreItor = find<MI_SEMAPHORE_WAIT *>(walkerItor, cmdList.end());
@@ -3120,7 +3120,7 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWhenProgrammingCounterWithOverflo
if (immCmdList->isQwordInOrderCounter()) { if (immCmdList->isQwordInOrderCounter()) {
expectedCounter = std::numeric_limits<uint32_t>::max(); expectedCounter = std::numeric_limits<uint32_t>::max();
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
if (isCompactEvent) { if (isCompactEvent) {
@@ -4512,7 +4512,7 @@ HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenCallingSync
HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenProgrammingTimestampEventThenHandleChaining, IsAtLeastXeHpCore) { HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenProgrammingTimestampEventThenHandleChaining, IsAtLeastXeHpCore) {
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
auto immCmdList = createMultiTileImmCmdList<gfxCoreFamily>(); auto immCmdList = createMultiTileImmCmdList<gfxCoreFamily>();
@@ -4529,10 +4529,10 @@ HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenProgramming
cmdStream->getCpuBase(), cmdStream->getCpuBase(),
cmdStream->getUsed())); cmdStream->getUsed()));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto computeWalkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto computeWalkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
ASSERT_NE(nullptr, computeWalkerCmd); ASSERT_NE(nullptr, computeWalkerCmd);
auto semaphoreItor = find<MI_SEMAPHORE_WAIT *>(walkerItor, cmdList.end()); auto semaphoreItor = find<MI_SEMAPHORE_WAIT *>(walkerItor, cmdList.end());
@@ -4561,7 +4561,7 @@ HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenProgramming
HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenProgrammingTimestampEventThenHandlePacketsChaining, IsAtLeastXeHpCore) { HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenProgrammingTimestampEventThenHandlePacketsChaining, IsAtLeastXeHpCore) {
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
auto immCmdList = createMultiTileImmCmdList<gfxCoreFamily>(); auto immCmdList = createMultiTileImmCmdList<gfxCoreFamily>();
@@ -4581,10 +4581,10 @@ HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenProgramming
cmdStream->getCpuBase(), cmdStream->getCpuBase(),
cmdStream->getUsed())); cmdStream->getUsed()));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto computeWalkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto computeWalkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
ASSERT_NE(nullptr, computeWalkerCmd); ASSERT_NE(nullptr, computeWalkerCmd);
auto semaphoreItor = find<MI_SEMAPHORE_WAIT *>(walkerItor, cmdList.end()); auto semaphoreItor = find<MI_SEMAPHORE_WAIT *>(walkerItor, cmdList.end());
@@ -4623,7 +4623,7 @@ HWTEST2_F(MultiTileInOrderCmdListTests, givenMultiTileInOrderModeWhenProgramming
} }
HWTEST2_F(MultiTileInOrderCmdListTests, whenUsingRegularCmdListThenAddWalkerToPatch, IsAtLeastXeHpCore) { HWTEST2_F(MultiTileInOrderCmdListTests, whenUsingRegularCmdListThenAddWalkerToPatch, IsAtLeastXeHpCore) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
ze_command_queue_desc_t desc = {}; ze_command_queue_desc_t desc = {};
@@ -4641,12 +4641,12 @@ HWTEST2_F(MultiTileInOrderCmdListTests, whenUsingRegularCmdListThenAddWalkerToPa
ASSERT_EQ(4u, regularCmdList->inOrderPatchCmds.size()); // Walker + 2x Semaphore + Walker ASSERT_EQ(4u, regularCmdList->inOrderPatchCmds.size()); // Walker + 2x Semaphore + Walker
auto walkerFromContainer1 = genCmdCast<COMPUTE_WALKER *>(regularCmdList->inOrderPatchCmds[0].cmd1); auto walkerFromContainer1 = genCmdCast<DefaultWalkerType *>(regularCmdList->inOrderPatchCmds[0].cmd1);
ASSERT_NE(nullptr, walkerFromContainer1); ASSERT_NE(nullptr, walkerFromContainer1);
auto walkerFromContainer2 = genCmdCast<COMPUTE_WALKER *>(regularCmdList->inOrderPatchCmds[3].cmd1); auto walkerFromContainer2 = genCmdCast<DefaultWalkerType *>(regularCmdList->inOrderPatchCmds[3].cmd1);
ASSERT_NE(nullptr, walkerFromContainer2); ASSERT_NE(nullptr, walkerFromContainer2);
COMPUTE_WALKER *walkerFromParser1 = nullptr; DefaultWalkerType *walkerFromParser1 = nullptr;
COMPUTE_WALKER *walkerFromParser2 = nullptr; DefaultWalkerType *walkerFromParser2 = nullptr;
{ {
GenCmdList cmdList; GenCmdList cmdList;
@@ -4654,15 +4654,15 @@ HWTEST2_F(MultiTileInOrderCmdListTests, whenUsingRegularCmdListThenAddWalkerToPa
ptrOffset(cmdStream->getCpuBase(), offset), ptrOffset(cmdStream->getCpuBase(), offset),
(cmdStream->getUsed() - offset))); (cmdStream->getUsed() - offset)));
auto itor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), itor); ASSERT_NE(cmdList.end(), itor);
walkerFromParser1 = genCmdCast<COMPUTE_WALKER *>(*itor); walkerFromParser1 = genCmdCast<DefaultWalkerType *>(*itor);
itor = find<COMPUTE_WALKER *>(++itor, cmdList.end()); itor = find<DefaultWalkerType *>(++itor, cmdList.end());
ASSERT_NE(cmdList.end(), itor); ASSERT_NE(cmdList.end(), itor);
walkerFromParser2 = genCmdCast<COMPUTE_WALKER *>(*itor); walkerFromParser2 = genCmdCast<DefaultWalkerType *>(*itor);
} }
EXPECT_EQ(2u, regularCmdList->inOrderExecInfo->getCounterValue()); EXPECT_EQ(2u, regularCmdList->inOrderExecInfo->getCounterValue());
@@ -5350,7 +5350,7 @@ HWTEST2_F(InOrderRegularCmdListTests, givenDebugFlagSetWhenUsingRegularCmdListTh
} }
HWTEST2_F(InOrderRegularCmdListTests, whenUsingRegularCmdListThenAddWalkerToPatch, IsAtLeastXeHpCore) { HWTEST2_F(InOrderRegularCmdListTests, whenUsingRegularCmdListThenAddWalkerToPatch, IsAtLeastXeHpCore) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
ze_command_queue_desc_t desc = {}; ze_command_queue_desc_t desc = {};
@@ -5367,12 +5367,12 @@ HWTEST2_F(InOrderRegularCmdListTests, whenUsingRegularCmdListThenAddWalkerToPatc
ASSERT_EQ(3u, regularCmdList->inOrderPatchCmds.size()); // Walker + Semaphore + Walker ASSERT_EQ(3u, regularCmdList->inOrderPatchCmds.size()); // Walker + Semaphore + Walker
auto walkerFromContainer1 = genCmdCast<COMPUTE_WALKER *>(regularCmdList->inOrderPatchCmds[0].cmd1); auto walkerFromContainer1 = genCmdCast<DefaultWalkerType *>(regularCmdList->inOrderPatchCmds[0].cmd1);
ASSERT_NE(nullptr, walkerFromContainer1); ASSERT_NE(nullptr, walkerFromContainer1);
auto walkerFromContainer2 = genCmdCast<COMPUTE_WALKER *>(regularCmdList->inOrderPatchCmds[2].cmd1); auto walkerFromContainer2 = genCmdCast<DefaultWalkerType *>(regularCmdList->inOrderPatchCmds[2].cmd1);
ASSERT_NE(nullptr, walkerFromContainer2); ASSERT_NE(nullptr, walkerFromContainer2);
COMPUTE_WALKER *walkerFromParser1 = nullptr; DefaultWalkerType *walkerFromParser1 = nullptr;
COMPUTE_WALKER *walkerFromParser2 = nullptr; DefaultWalkerType *walkerFromParser2 = nullptr;
{ {
GenCmdList cmdList; GenCmdList cmdList;
@@ -5380,15 +5380,15 @@ HWTEST2_F(InOrderRegularCmdListTests, whenUsingRegularCmdListThenAddWalkerToPatc
ptrOffset(cmdStream->getCpuBase(), offset), ptrOffset(cmdStream->getCpuBase(), offset),
(cmdStream->getUsed() - offset))); (cmdStream->getUsed() - offset)));
auto itor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto itor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), itor); ASSERT_NE(cmdList.end(), itor);
walkerFromParser1 = genCmdCast<COMPUTE_WALKER *>(*itor); walkerFromParser1 = genCmdCast<DefaultWalkerType *>(*itor);
itor = find<COMPUTE_WALKER *>(++itor, cmdList.end()); itor = find<DefaultWalkerType *>(++itor, cmdList.end());
ASSERT_NE(cmdList.end(), itor); ASSERT_NE(cmdList.end(), itor);
walkerFromParser2 = genCmdCast<COMPUTE_WALKER *>(*itor); walkerFromParser2 = genCmdCast<DefaultWalkerType *>(*itor);
} }
EXPECT_EQ(2u, regularCmdList->inOrderExecInfo->getCounterValue()); EXPECT_EQ(2u, regularCmdList->inOrderExecInfo->getCounterValue());
@@ -5419,7 +5419,7 @@ HWTEST2_F(InOrderRegularCmdListTests, whenUsingRegularCmdListThenAddWalkerToPatc
HWTEST2_F(InOrderRegularCmdListTests, givenInOrderModeWhenDispatchingRegularCmdListThenProgramPipeControlsToHandleDependencies, IsAtLeastXeHpCore) { HWTEST2_F(InOrderRegularCmdListTests, givenInOrderModeWhenDispatchingRegularCmdListThenProgramPipeControlsToHandleDependencies, IsAtLeastXeHpCore) {
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA; using POSTSYNC_DATA = typename FamilyType::POSTSYNC_DATA;
using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM; using MI_STORE_DATA_IMM = typename FamilyType::MI_STORE_DATA_IMM;
@@ -5439,10 +5439,10 @@ HWTEST2_F(InOrderRegularCmdListTests, givenInOrderModeWhenDispatchingRegularCmdL
ptrOffset(cmdStream->getCpuBase(), offset), ptrOffset(cmdStream->getCpuBase(), offset),
(cmdStream->getUsed() - offset))); (cmdStream->getUsed() - offset)));
auto walkerItor = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
EXPECT_EQ(POSTSYNC_DATA::OPERATION_WRITE_IMMEDIATE_DATA, postSync.getOperation()); EXPECT_EQ(POSTSYNC_DATA::OPERATION_WRITE_IMMEDIATE_DATA, postSync.getOperation());
@@ -5466,10 +5466,10 @@ HWTEST2_F(InOrderRegularCmdListTests, givenInOrderModeWhenDispatchingRegularCmdL
auto semaphoreItor = find<MI_SEMAPHORE_WAIT *>(cmdList.begin(), cmdList.end()); auto semaphoreItor = find<MI_SEMAPHORE_WAIT *>(cmdList.begin(), cmdList.end());
EXPECT_NE(cmdList.end(), semaphoreItor); EXPECT_NE(cmdList.end(), semaphoreItor);
auto walkerItor = find<COMPUTE_WALKER *>(semaphoreItor, cmdList.end()); auto walkerItor = find<DefaultWalkerType *>(semaphoreItor, cmdList.end());
ASSERT_NE(cmdList.end(), walkerItor); ASSERT_NE(cmdList.end(), walkerItor);
auto walkerCmd = genCmdCast<COMPUTE_WALKER *>(*walkerItor); auto walkerCmd = genCmdCast<DefaultWalkerType *>(*walkerItor);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
EXPECT_EQ(POSTSYNC_DATA::OPERATION_WRITE_IMMEDIATE_DATA, postSync.getOperation()); EXPECT_EQ(POSTSYNC_DATA::OPERATION_WRITE_IMMEDIATE_DATA, postSync.getOperation());

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2018-2023 Intel Corporation * Copyright (C) 2018-2024 Intel Corporation
* *
* SPDX-License-Identifier: MIT * SPDX-License-Identifier: MIT
* *
@@ -1171,7 +1171,7 @@ HWTEST_F(OoqCommandQueueHwBlitTest, givenBlitBeforeBarrierWhenEnqueueingCommandT
using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT; using MI_SEMAPHORE_WAIT = typename FamilyType::MI_SEMAPHORE_WAIT;
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using XY_COPY_BLT = typename FamilyType::XY_COPY_BLT; using XY_COPY_BLT = typename FamilyType::XY_COPY_BLT;
using COMPUTE_WALKER = typename FamilyType::DefaultWalkerType; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
if (pCmdQ->getTimestampPacketContainer() == nullptr) { if (pCmdQ->getTimestampPacketContainer() == nullptr) {
GTEST_SKIP(); GTEST_SKIP();
@@ -1225,7 +1225,7 @@ HWTEST_F(OoqCommandQueueHwBlitTest, givenBlitBeforeBarrierWhenEnqueueingCommandT
if (semaphore) { if (semaphore) {
semaphoreIndex = index; semaphoreIndex = index;
} }
const auto computeWalker = genCmdCast<COMPUTE_WALKER *>(*itor); const auto computeWalker = genCmdCast<DefaultWalkerType *>(*itor);
if (computeWalker) { if (computeWalker) {
lastComputeWalkerIndex = index; lastComputeWalkerIndex = index;
} }

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2021-2023 Intel Corporation * Copyright (C) 2021-2024 Intel Corporation
* *
* SPDX-License-Identifier: MIT * SPDX-License-Identifier: MIT
* *
@@ -77,7 +77,7 @@ using Dg2AndLaterDispatchWalkerBasicTest = Test<Dg2AndLaterDispatchWalkerBasicFi
using matcherDG2AndLater = IsAtLeastXeHpgCore; using matcherDG2AndLater = IsAtLeastXeHpgCore;
HWTEST2_F(WalkerDispatchTestDg2AndLater, givenDebugVariableSetWhenProgramComputeWalkerThenApplyL3PrefetchAppropriately, matcherDG2AndLater) { HWTEST2_F(WalkerDispatchTestDg2AndLater, givenDebugVariableSetWhenProgramComputeWalkerThenApplyL3PrefetchAppropriately, matcherDG2AndLater) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
DebugManagerStateRestore restore; DebugManagerStateRestore restore;
auto walkerCmd = FamilyType::cmdInitGpgpuWalker; auto walkerCmd = FamilyType::cmdInitGpgpuWalker;
MockExecutionEnvironment mockExecutionEnvironment{}; MockExecutionEnvironment mockExecutionEnvironment{};
@@ -93,7 +93,7 @@ HWTEST2_F(WalkerDispatchTestDg2AndLater, givenDebugVariableSetWhenProgramCompute
} }
HWTEST2_F(Dg2AndLaterDispatchWalkerBasicTest, givenTimestampPacketWhenDispatchingThenProgramPostSyncData, matcherDG2AndLater) { HWTEST2_F(Dg2AndLaterDispatchWalkerBasicTest, givenTimestampPacketWhenDispatchingThenProgramPostSyncData, matcherDG2AndLater) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
MockKernelWithInternals kernel1(*device); MockKernelWithInternals kernel1(*device);
MockKernelWithInternals kernel2(*device); MockKernelWithInternals kernel2(*device);
@@ -126,7 +126,7 @@ HWTEST2_F(Dg2AndLaterDispatchWalkerBasicTest, givenTimestampPacketWhenDispatchin
auto expectedMocs = MemorySynchronizationCommands<FamilyType>::getDcFlushEnable(true, device->getRootDeviceEnvironment()) ? gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) : gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER); auto expectedMocs = MemorySynchronizationCommands<FamilyType>::getDcFlushEnable(true, device->getRootDeviceEnvironment()) ? gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) : gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER);
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_TIMESTAMP, walker->getPostSync().getOperation()); EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_TIMESTAMP, walker->getPostSync().getOperation());
EXPECT_TRUE(walker->getPostSync().getDataportPipelineFlush()); EXPECT_TRUE(walker->getPostSync().getDataportPipelineFlush());
EXPECT_TRUE(walker->getPostSync().getDataportSubsliceCacheFlush()); EXPECT_TRUE(walker->getPostSync().getDataportSubsliceCacheFlush());
@@ -134,8 +134,8 @@ HWTEST2_F(Dg2AndLaterDispatchWalkerBasicTest, givenTimestampPacketWhenDispatchin
auto contextStartAddress = TimestampPacketHelper::getContextStartGpuAddress(*timestampPacketContainer.peekNodes()[0]); auto contextStartAddress = TimestampPacketHelper::getContextStartGpuAddress(*timestampPacketContainer.peekNodes()[0]);
EXPECT_EQ(contextStartAddress, walker->getPostSync().getDestinationAddress()); EXPECT_EQ(contextStartAddress, walker->getPostSync().getDestinationAddress());
auto secondWalkerItor = find<COMPUTE_WALKER *>(++hwParser.itorWalker, hwParser.cmdList.end()); auto secondWalkerItor = find<DefaultWalkerType *>(++hwParser.itorWalker, hwParser.cmdList.end());
auto secondWalker = genCmdCast<COMPUTE_WALKER *>(*secondWalkerItor); auto secondWalker = genCmdCast<DefaultWalkerType *>(*secondWalkerItor);
EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_TIMESTAMP, secondWalker->getPostSync().getOperation()); EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_TIMESTAMP, secondWalker->getPostSync().getOperation());
EXPECT_TRUE(secondWalker->getPostSync().getDataportPipelineFlush()); EXPECT_TRUE(secondWalker->getPostSync().getDataportPipelineFlush());
@@ -146,7 +146,7 @@ HWTEST2_F(Dg2AndLaterDispatchWalkerBasicTest, givenTimestampPacketWhenDispatchin
} }
HWTEST2_F(Dg2AndLaterDispatchWalkerBasicTest, givenDebugVariableEnabledWhenEnqueueingThenWriteWalkerStamp, matcherDG2AndLater) { HWTEST2_F(Dg2AndLaterDispatchWalkerBasicTest, givenDebugVariableEnabledWhenEnqueueingThenWriteWalkerStamp, matcherDG2AndLater) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
DebugManagerStateRestore restore; DebugManagerStateRestore restore;
debugManager.flags.EnableTimestampPacket.set(true); debugManager.flags.EnableTimestampPacket.set(true);
@@ -164,7 +164,7 @@ HWTEST2_F(Dg2AndLaterDispatchWalkerBasicTest, givenDebugVariableEnabledWhenEnque
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
auto gmmHelper = device->getGmmHelper(); auto gmmHelper = device->getGmmHelper();
auto expectedMocs = MemorySynchronizationCommands<FamilyType>::getDcFlushEnable(true, device->getRootDeviceEnvironment()) ? gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) : gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER); auto expectedMocs = MemorySynchronizationCommands<FamilyType>::getDcFlushEnable(true, device->getRootDeviceEnvironment()) ? gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) : gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER);

View File

@@ -90,8 +90,8 @@ struct XeHPAndLaterDispatchWalkerBasicFixture : public LinearStreamFixture {
using XeHPAndLaterDispatchWalkerBasicTest = Test<XeHPAndLaterDispatchWalkerBasicFixture>; using XeHPAndLaterDispatchWalkerBasicTest = Test<XeHPAndLaterDispatchWalkerBasicFixture>;
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimOneThenLocalWorkSizeEqualsLocalXDim) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimOneThenLocalWorkSizeEqualsLocalXDim) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
auto localWorkSize = GpgpuWalkerHelper<FamilyType>::setGpgpuWalkerThreadData( auto localWorkSize = GpgpuWalkerHelper<FamilyType>::setGpgpuWalkerThreadData(
@@ -109,8 +109,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimOne
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimTwoThenLocalWorkSizeEqualsProductLocalXandYDim) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimTwoThenLocalWorkSizeEqualsProductLocalXandYDim) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
localWorkSizesIn[1] = 8; localWorkSizesIn[1] = 8;
@@ -129,8 +129,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimTwo
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimThreeThenLocalWorkSizeEqualsProductLocalXandYandZDim) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimThreeThenLocalWorkSizeEqualsProductLocalXandYandZDim) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
localWorkSizesIn[1] = 8; localWorkSizesIn[1] = 8;
@@ -150,8 +150,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWorkDimThr
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOneWhenAskHwForLocalIdsThenExpectGenerationFieldsSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOneWhenAskHwForLocalIdsThenExpectGenerationFieldsSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({1, 0, 0}); kernel->kernelInfo.setLocalIds({1, 0, 0});
@@ -174,8 +174,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOn
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTwoWhenOnlyYIdPresentAskHwForLocalIdsThenExpectGenerationFieldsSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTwoWhenOnlyYIdPresentAskHwForLocalIdsThenExpectGenerationFieldsSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({0, 1, 0}); kernel->kernelInfo.setLocalIds({0, 1, 0});
@@ -199,8 +199,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTw
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkThreeTwoWhenOnlyZIdPresentAskHwForLocalIdsThenExpectGenerationFieldsSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkThreeTwoWhenOnlyZIdPresentAskHwForLocalIdsThenExpectGenerationFieldsSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({0, 0, 1}); kernel->kernelInfo.setLocalIds({0, 0, 1});
@@ -224,8 +224,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkThree
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDifferentSIMDsizesWhenLocalIdsGeneratedThenMessageSizeIsSetToProperValue) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDifferentSIMDsizesWhenLocalIdsGeneratedThenMessageSizeIsSetToProperValue) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({0, 0, 1}); kernel->kernelInfo.setLocalIds({0, 0, 1});
@@ -249,8 +249,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDifferent
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugFlagWhenItIsSetThenMessageSimdIsOverwritten) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugFlagWhenItIsSetThenMessageSimdIsOverwritten) {
DebugManagerStateRestore restorer; DebugManagerStateRestore restorer;
debugManager.flags.ForceSimdMessageSizeInWalker.set(1); debugManager.flags.ForceSimdMessageSizeInWalker.set(1);
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({0, 0, 1}); kernel->kernelInfo.setLocalIds({0, 0, 1});
@@ -272,8 +272,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugFlag
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTwoWhenAskHwForLocalIdsThenExpectGenerationFieldsSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTwoWhenAskHwForLocalIdsThenExpectGenerationFieldsSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
@@ -297,8 +297,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTw
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenAskHwForLocalIdsThenExpectGenerationFieldsSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenAskHwForLocalIdsThenExpectGenerationFieldsSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({1, 1, 1}); kernel->kernelInfo.setLocalIds({1, 1, 1});
@@ -321,8 +321,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTh
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenAskHwForLocalIdsAndNoLocalIdsUsedThenExpectNoGenerationFieldsSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenAskHwForLocalIdsAndNoLocalIdsUsedThenExpectNoGenerationFieldsSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({0, 0, 0}); kernel->kernelInfo.setLocalIds({0, 0, 0});
@@ -343,8 +343,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTh
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenNotAskHwForLocalIdsAndLocalIdsUsedThenExpectNoGenerationFieldsSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenNotAskHwForLocalIdsAndLocalIdsUsedThenExpectNoGenerationFieldsSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({1, 1, 1}); kernel->kernelInfo.setLocalIds({1, 1, 1});
@@ -365,8 +365,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTh
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOneWhenAskForInlineDataAndNoLocalIdsPresentThenExpectOnlyInlineFieldSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOneWhenAskForInlineDataAndNoLocalIdsPresentThenExpectOnlyInlineFieldSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
GpgpuWalkerHelper<FamilyType>::setGpgpuWalkerThreadData(computeWalker, kernel->kernelInfo.kernelDescriptor, globalOffsets, startWorkGroups, numWorkGroups, GpgpuWalkerHelper<FamilyType>::setGpgpuWalkerThreadData(computeWalker, kernel->kernelInfo.kernelDescriptor, globalOffsets, startWorkGroups, numWorkGroups,
@@ -382,8 +382,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOn
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOneWhenAskForInlineDataAndLocalIdsPresentThenExpectInlineAndDoNotExpectEmitLocalIdFieldSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOneWhenAskForInlineDataAndLocalIdsPresentThenExpectInlineAndDoNotExpectEmitLocalIdFieldSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({1, 0, 0}); kernel->kernelInfo.setLocalIds({1, 0, 0});
@@ -402,8 +402,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimOn
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenAskForInlineDataAndLocalIdsPresentThenDoNotExpectEmitLocalIdFieldSetButExpectInlineSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenAskForInlineDataAndLocalIdsPresentThenDoNotExpectEmitLocalIdFieldSetButExpectInlineSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({1, 1, 1}); kernel->kernelInfo.setLocalIds({1, 1, 1});
@@ -421,8 +421,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTh
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenAskHwForLocalIdsAndInlineDataThenExpectGenerationFieldsSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimThreeWhenAskHwForLocalIdsAndInlineDataThenExpectGenerationFieldsSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
COMPUTE_WALKER *computeWalker = static_cast<COMPUTE_WALKER *>(linearStream.getSpace(sizeof(COMPUTE_WALKER))); DefaultWalkerType *computeWalker = static_cast<DefaultWalkerType *>(linearStream.getSpace(sizeof(DefaultWalkerType)));
*computeWalker = FamilyType::cmdInitGpgpuWalker; *computeWalker = FamilyType::cmdInitGpgpuWalker;
kernel->kernelInfo.setLocalIds({1, 1, 1}); kernel->kernelInfo.setLocalIds({1, 1, 1});
@@ -446,7 +446,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenWorkDimTh
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenTimestampPacketWhenDispatchingThenProgramPostSyncData) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenTimestampPacketWhenDispatchingThenProgramPostSyncData) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
MockKernelWithInternals kernel1(*device); MockKernelWithInternals kernel1(*device);
MockKernelWithInternals kernel2(*device); MockKernelWithInternals kernel2(*device);
@@ -464,7 +464,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenTimestamp
HardwareInterfaceWalkerArgs walkerArgs = createHardwareInterfaceWalkerArgs(CL_COMMAND_NDRANGE_KERNEL); HardwareInterfaceWalkerArgs walkerArgs = createHardwareInterfaceWalkerArgs(CL_COMMAND_NDRANGE_KERNEL);
walkerArgs.currentTimestampPacketNodes = &timestampPacketContainer; walkerArgs.currentTimestampPacketNodes = &timestampPacketContainer;
HardwareInterface<FamilyType>::template dispatchWalker<COMPUTE_WALKER>( HardwareInterface<FamilyType>::template dispatchWalker<DefaultWalkerType>(
cmdQ, cmdQ,
multiDispatchInfo, multiDispatchInfo,
CsrDependencies(), CsrDependencies(),
@@ -478,15 +478,15 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenTimestamp
auto gmmHelper = device->getGmmHelper(); auto gmmHelper = device->getGmmHelper();
auto expectedMocs = MemorySynchronizationCommands<FamilyType>::getDcFlushEnable(true, device->getRootDeviceEnvironment()) ? gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) : gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER); auto expectedMocs = MemorySynchronizationCommands<FamilyType>::getDcFlushEnable(true, device->getRootDeviceEnvironment()) ? gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) : gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER);
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_TIMESTAMP, walker->getPostSync().getOperation()); EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_TIMESTAMP, walker->getPostSync().getOperation());
EXPECT_TRUE(walker->getPostSync().getDataportPipelineFlush()); EXPECT_TRUE(walker->getPostSync().getDataportPipelineFlush());
EXPECT_EQ(expectedMocs, walker->getPostSync().getMocs()); EXPECT_EQ(expectedMocs, walker->getPostSync().getMocs());
auto contextStartAddress = TimestampPacketHelper::getContextStartGpuAddress(*timestampPacketContainer.peekNodes()[0]); auto contextStartAddress = TimestampPacketHelper::getContextStartGpuAddress(*timestampPacketContainer.peekNodes()[0]);
EXPECT_EQ(contextStartAddress, walker->getPostSync().getDestinationAddress()); EXPECT_EQ(contextStartAddress, walker->getPostSync().getDestinationAddress());
auto secondWalkerItor = find<COMPUTE_WALKER *>(++hwParser.itorWalker, hwParser.cmdList.end()); auto secondWalkerItor = find<DefaultWalkerType *>(++hwParser.itorWalker, hwParser.cmdList.end());
auto secondWalker = genCmdCast<COMPUTE_WALKER *>(*secondWalkerItor); auto secondWalker = genCmdCast<DefaultWalkerType *>(*secondWalkerItor);
EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_TIMESTAMP, secondWalker->getPostSync().getOperation()); EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_TIMESTAMP, secondWalker->getPostSync().getOperation());
EXPECT_TRUE(secondWalker->getPostSync().getDataportPipelineFlush()); EXPECT_TRUE(secondWalker->getPostSync().getDataportPipelineFlush());
@@ -496,7 +496,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenTimestamp
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVariableEnabledWhenEnqueueingThenWriteWalkerStamp) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVariableEnabledWhenEnqueueingThenWriteWalkerStamp) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
debugManager.flags.EnableTimestampPacket.set(true); debugManager.flags.EnableTimestampPacket.set(true);
auto testDevice = std::make_unique<MockClDevice>(MockDevice::createWithNewExecutionEnvironment<MockDevice>(defaultHwInfo.get())); auto testDevice = std::make_unique<MockClDevice>(MockDevice::createWithNewExecutionEnvironment<MockDevice>(defaultHwInfo.get()));
@@ -513,7 +513,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVari
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
auto gmmHelper = device->getGmmHelper(); auto gmmHelper = device->getGmmHelper();
auto expectedMocs = MemorySynchronizationCommands<FamilyType>::getDcFlushEnable(true, device->getRootDeviceEnvironment()) ? gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) : gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER); auto expectedMocs = MemorySynchronizationCommands<FamilyType>::getDcFlushEnable(true, device->getRootDeviceEnvironment()) ? gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) : gmmHelper->getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER);
@@ -526,7 +526,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVari
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVariableEnabledWhenMocsValueIsOverwrittenThenPostSyncContainsProperSetting) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVariableEnabledWhenMocsValueIsOverwrittenThenPostSyncContainsProperSetting) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
auto mocsValue = 8u; auto mocsValue = 8u;
debugManager.flags.EnableTimestampPacket.set(true); debugManager.flags.EnableTimestampPacket.set(true);
debugManager.flags.OverridePostSyncMocs.set(mocsValue); debugManager.flags.OverridePostSyncMocs.set(mocsValue);
@@ -545,7 +545,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVari
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
auto &postSyncData = walker->getPostSync(); auto &postSyncData = walker->getPostSync();
EXPECT_EQ(mocsValue, postSyncData.getMocs()); EXPECT_EQ(mocsValue, postSyncData.getMocs());
@@ -591,7 +591,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVari
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<typename FamilyType::COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<typename FamilyType::DefaultWalkerType *>(*hwParser.itorWalker);
auto &postSyncData = walker->getPostSync(); auto &postSyncData = walker->getPostSync();
EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_IMMEDIATE_DATA, EXPECT_EQ(FamilyType::POSTSYNC_DATA::OPERATION::OPERATION_WRITE_IMMEDIATE_DATA,
postSyncData.getOperation()); postSyncData.getOperation());
@@ -614,12 +614,12 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenDebugVari
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<typename FamilyType::COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<typename FamilyType::DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_TRUE(walker->getSystolicModeEnable()); EXPECT_TRUE(walker->getSystolicModeEnable());
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenAutoLocalIdsGenerationEnabledWhenDispatchMeetCriteriaThenExpectNoLocalIdsAndProperIsaAddress) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenAutoLocalIdsGenerationEnabledWhenDispatchMeetCriteriaThenExpectNoLocalIdsAndProperIsaAddress) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using INTERFACE_DESCRIPTOR_DATA = typename FamilyType::INTERFACE_DESCRIPTOR_DATA; using INTERFACE_DESCRIPTOR_DATA = typename FamilyType::INTERFACE_DESCRIPTOR_DATA;
debugManager.flags.EnableHwGenerationLocalIds.set(1); debugManager.flags.EnableHwGenerationLocalIds.set(1);
@@ -656,13 +656,13 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenAutoLocal
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(COMPUTE_WALKER::DWORD_LENGTH_FIXED_SIZE, walker->getDwordLength()); EXPECT_EQ(DefaultWalkerType::DWORD_LENGTH_FIXED_SIZE, walker->getDwordLength());
EXPECT_EQ(0u, walker->getEmitInlineParameter()); EXPECT_EQ(0u, walker->getEmitInlineParameter());
EXPECT_EQ(1u, walker->getGenerateLocalId()); EXPECT_EQ(1u, walker->getGenerateLocalId());
EXPECT_EQ(1u, walker->getEmitLocalId()); EXPECT_EQ(1u, walker->getEmitLocalId());
uint32_t expectedIndirectDataLength = alignUp(kernel->mockKernel->getCrossThreadDataSize(), COMPUTE_WALKER::INDIRECTDATASTARTADDRESS_ALIGN_SIZE); uint32_t expectedIndirectDataLength = alignUp(kernel->mockKernel->getCrossThreadDataSize(), DefaultWalkerType::INDIRECTDATASTARTADDRESS_ALIGN_SIZE);
EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength()); EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength());
INTERFACE_DESCRIPTOR_DATA &idd = walker->getInterfaceDescriptor(); INTERFACE_DESCRIPTOR_DATA &idd = walker->getInterfaceDescriptor();
@@ -681,7 +681,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenAutoLocal
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataEnabledWhenLocalIdsUsedThenDoNotExpectCrossThreadDataInWalkerEmitLocalFieldSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataEnabledWhenLocalIdsUsedThenDoNotExpectCrossThreadDataInWalkerEmitLocalFieldSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using INTERFACE_DESCRIPTOR_DATA = typename FamilyType::INTERFACE_DESCRIPTOR_DATA; using INTERFACE_DESCRIPTOR_DATA = typename FamilyType::INTERFACE_DESCRIPTOR_DATA;
using INLINE_DATA = typename FamilyType::INLINE_DATA; using INLINE_DATA = typename FamilyType::INLINE_DATA;
@@ -718,7 +718,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(1u, walker->getEmitInlineParameter()); EXPECT_EQ(1u, walker->getEmitInlineParameter());
EXPECT_EQ(0u, walker->getGenerateLocalId()); EXPECT_EQ(0u, walker->getGenerateLocalId());
@@ -732,7 +732,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
sizePerThreadData = std::max(sizePerThreadData, sizeGrf); sizePerThreadData = std::max(sizePerThreadData, sizeGrf);
size_t perThreadTotalDataSize = getThreadsPerWG(simd, static_cast<uint32_t>(lws[0])) * sizePerThreadData; size_t perThreadTotalDataSize = getThreadsPerWG(simd, static_cast<uint32_t>(lws[0])) * sizePerThreadData;
uint32_t expectedIndirectDataLength = alignUp(static_cast<uint32_t>(perThreadTotalDataSize), COMPUTE_WALKER::INDIRECTDATASTARTADDRESS_ALIGN_SIZE); uint32_t expectedIndirectDataLength = alignUp(static_cast<uint32_t>(perThreadTotalDataSize), DefaultWalkerType::INDIRECTDATASTARTADDRESS_ALIGN_SIZE);
EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength()); EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength());
INTERFACE_DESCRIPTOR_DATA &idd = walker->getInterfaceDescriptor(); INTERFACE_DESCRIPTOR_DATA &idd = walker->getInterfaceDescriptor();
@@ -749,7 +749,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenExecutionMaskWithoutReminderWhenProgrammingWalkerThenSetValidNumberOfBitsInMask) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenExecutionMaskWithoutReminderWhenProgrammingWalkerThenSetValidNumberOfBitsInMask) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
auto cmdQ = std::make_unique<MockCommandQueueHw<FamilyType>>(context.get(), device.get(), nullptr); auto cmdQ = std::make_unique<MockCommandQueueHw<FamilyType>>(context.get(), device.get(), nullptr);
std::array<uint32_t, 4> testedSimd = {{1, 8, 16, 32}}; std::array<uint32_t, 4> testedSimd = {{1, 8, 16, 32}};
@@ -770,7 +770,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenExecution
hwParser.parseCommands<FamilyType>(cmdQ->getCS(0), streamOffset); hwParser.parseCommands<FamilyType>(cmdQ->getCS(0), streamOffset);
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
if (isSimd1(simd)) { if (isSimd1(simd)) {
EXPECT_EQ(maxNBitValue(32), walker->getExecutionMask()); EXPECT_EQ(maxNBitValue(32), walker->getExecutionMask());
} else { } else {
@@ -780,7 +780,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenExecution
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataEnabledWhenLocalIdsUsedAndCrossThreadIsTwoGrfsThenExpectFirstCrossThreadDataInWalkerSecondInPayloadWithPerThread) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataEnabledWhenLocalIdsUsedAndCrossThreadIsTwoGrfsThenExpectFirstCrossThreadDataInWalkerSecondInPayloadWithPerThread) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using INLINE_DATA = typename FamilyType::INLINE_DATA; using INLINE_DATA = typename FamilyType::INLINE_DATA;
debugManager.flags.EnablePassInlineData.set(true); debugManager.flags.EnablePassInlineData.set(true);
@@ -819,7 +819,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(1u, walker->getEmitInlineParameter()); EXPECT_EQ(1u, walker->getEmitInlineParameter());
EXPECT_EQ(0u, walker->getGenerateLocalId()); EXPECT_EQ(0u, walker->getGenerateLocalId());
@@ -840,14 +840,14 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
// second GRF in indirect // second GRF in indirect
uint32_t expectedIndirectDataLength = sizePerThreadData + crossThreadDataSize; uint32_t expectedIndirectDataLength = sizePerThreadData + crossThreadDataSize;
expectedIndirectDataLength = alignUp(expectedIndirectDataLength, COMPUTE_WALKER::INDIRECTDATASTARTADDRESS_ALIGN_SIZE); expectedIndirectDataLength = alignUp(expectedIndirectDataLength, DefaultWalkerType::INDIRECTDATASTARTADDRESS_ALIGN_SIZE);
EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength()); EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength());
memoryManager->freeGraphicsMemory(kernel->kernelInfo.kernelAllocation); memoryManager->freeGraphicsMemory(kernel->kernelInfo.kernelAllocation);
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenKernelWithoutLocalIdsAndPassInlineDataEnabledWhenNoHWGenerationOfLocalIdsUsedThenExpectCrossThreadDataInWalkerAndNoEmitLocalFieldSet) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenKernelWithoutLocalIdsAndPassInlineDataEnabledWhenNoHWGenerationOfLocalIdsUsedThenExpectCrossThreadDataInWalkerAndNoEmitLocalFieldSet) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using INLINE_DATA = typename FamilyType::INLINE_DATA; using INLINE_DATA = typename FamilyType::INLINE_DATA;
debugManager.flags.EnablePassInlineData.set(true); debugManager.flags.EnablePassInlineData.set(true);
@@ -873,7 +873,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenKernelWit
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(1u, walker->getEmitInlineParameter()); EXPECT_EQ(1u, walker->getEmitInlineParameter());
EXPECT_EQ(0u, walker->getGenerateLocalId()); EXPECT_EQ(0u, walker->getGenerateLocalId());
@@ -883,14 +883,14 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenKernelWit
size_t perThreadTotalDataSize = 0U; size_t perThreadTotalDataSize = 0U;
uint32_t expectedIndirectDataLength = static_cast<uint32_t>(perThreadTotalDataSize); uint32_t expectedIndirectDataLength = static_cast<uint32_t>(perThreadTotalDataSize);
expectedIndirectDataLength = alignUp(expectedIndirectDataLength, COMPUTE_WALKER::INDIRECTDATASTARTADDRESS_ALIGN_SIZE); expectedIndirectDataLength = alignUp(expectedIndirectDataLength, DefaultWalkerType::INDIRECTDATASTARTADDRESS_ALIGN_SIZE);
EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength()); EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength());
memoryManager->freeGraphicsMemory(kernel->kernelInfo.kernelAllocation); memoryManager->freeGraphicsMemory(kernel->kernelInfo.kernelAllocation);
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataEnabledWhenNoLocalIdsUsedAndCrossThreadIsTwoGrfsThenExpectFirstCrossThreadDataInWalkerSecondInPayload) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataEnabledWhenNoLocalIdsUsedAndCrossThreadIsTwoGrfsThenExpectFirstCrossThreadDataInWalkerSecondInPayload) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using INLINE_DATA = typename FamilyType::INLINE_DATA; using INLINE_DATA = typename FamilyType::INLINE_DATA;
debugManager.flags.EnablePassInlineData.set(true); debugManager.flags.EnablePassInlineData.set(true);
@@ -917,7 +917,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(1u, walker->getEmitInlineParameter()); EXPECT_EQ(1u, walker->getEmitInlineParameter());
EXPECT_EQ(0u, walker->getGenerateLocalId()); EXPECT_EQ(0u, walker->getGenerateLocalId());
@@ -931,14 +931,14 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
// second GRF in indirect // second GRF in indirect
uint32_t expectedIndirectDataLength = static_cast<uint32_t>(perThreadTotalDataSize + sizeof(INLINE_DATA)); uint32_t expectedIndirectDataLength = static_cast<uint32_t>(perThreadTotalDataSize + sizeof(INLINE_DATA));
expectedIndirectDataLength = alignUp(expectedIndirectDataLength, COMPUTE_WALKER::INDIRECTDATASTARTADDRESS_ALIGN_SIZE); expectedIndirectDataLength = alignUp(expectedIndirectDataLength, DefaultWalkerType::INDIRECTDATASTARTADDRESS_ALIGN_SIZE);
EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength()); EXPECT_EQ(expectedIndirectDataLength, walker->getIndirectDataLength());
memoryManager->freeGraphicsMemory(kernel->kernelInfo.kernelAllocation); memoryManager->freeGraphicsMemory(kernel->kernelInfo.kernelAllocation);
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenAllChannelsActiveWithWorkDimOneDimensionThenHwGenerationIsEnabledWithOverwrittenWalkOrder) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenAllChannelsActiveWithWorkDimOneDimensionThenHwGenerationIsEnabledWithOverwrittenWalkOrder) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
debugManager.flags.EnableHwGenerationLocalIds.set(true); debugManager.flags.EnableHwGenerationLocalIds.set(true);
@@ -965,7 +965,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenAllChanne
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(1u, walker->getGenerateLocalId()); EXPECT_EQ(1u, walker->getGenerateLocalId());
EXPECT_EQ(7u, walker->getEmitLocalId()); EXPECT_EQ(7u, walker->getEmitLocalId());
@@ -975,7 +975,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenAllChanne
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataAndHwLocalIdsGenerationEnabledWhenLocalIdsUsedThenExpectCrossThreadDataInWalkerAndEmitFields) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataAndHwLocalIdsGenerationEnabledWhenLocalIdsUsedThenExpectCrossThreadDataInWalkerAndEmitFields) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using INTERFACE_DESCRIPTOR_DATA = typename FamilyType::INTERFACE_DESCRIPTOR_DATA; using INTERFACE_DESCRIPTOR_DATA = typename FamilyType::INTERFACE_DESCRIPTOR_DATA;
using INLINE_DATA = typename FamilyType::INLINE_DATA; using INLINE_DATA = typename FamilyType::INLINE_DATA;
@@ -1006,7 +1006,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(1u, walker->getEmitInlineParameter()); EXPECT_EQ(1u, walker->getEmitInlineParameter());
EXPECT_EQ(1u, walker->getGenerateLocalId()); EXPECT_EQ(1u, walker->getGenerateLocalId());
@@ -1028,7 +1028,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataAndHwLocalIdsGenerationEnabledWhenLocalIdsNotUsedThenExpectCrossThreadDataInWalkerAndNoHwLocalIdGeneration) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlineDataAndHwLocalIdsGenerationEnabledWhenLocalIdsNotUsedThenExpectCrossThreadDataInWalkerAndNoHwLocalIdGeneration) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using INTERFACE_DESCRIPTOR_DATA = typename FamilyType::INTERFACE_DESCRIPTOR_DATA; using INTERFACE_DESCRIPTOR_DATA = typename FamilyType::INTERFACE_DESCRIPTOR_DATA;
using INLINE_DATA = typename FamilyType::INLINE_DATA; using INLINE_DATA = typename FamilyType::INLINE_DATA;
@@ -1059,7 +1059,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenPassInlin
hwParser.findHardwareCommands<FamilyType>(); hwParser.findHardwareCommands<FamilyType>();
EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end()); EXPECT_NE(hwParser.itorWalker, hwParser.cmdList.end());
auto walker = genCmdCast<COMPUTE_WALKER *>(*hwParser.itorWalker); auto walker = genCmdCast<DefaultWalkerType *>(*hwParser.itorWalker);
EXPECT_EQ(1u, walker->getEmitInlineParameter()); EXPECT_EQ(1u, walker->getEmitInlineParameter());
EXPECT_EQ(0u, walker->getGenerateLocalId()); EXPECT_EQ(0u, walker->getGenerateLocalId());
@@ -1208,7 +1208,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenWalkerPart
DispatchInfo dispatchInfo{}; DispatchInfo dispatchInfo{};
dispatchInfo.setNumberOfWorkgroups({32, 1, 1}); dispatchInfo.setNumberOfWorkgroups({32, 1, 1});
auto baseSize = sizeof(typename FamilyType::COMPUTE_WALKER) + auto baseSize = sizeof(typename FamilyType::DefaultWalkerType) +
(sizeof(typename FamilyType::PIPE_CONTROL) * numPipeControls) + (sizeof(typename FamilyType::PIPE_CONTROL) * numPipeControls) +
HardwareCommandsHelper<FamilyType>::getSizeRequiredCS() + HardwareCommandsHelper<FamilyType>::getSizeRequiredCS() +
EncodeMemoryPrefetch<FamilyType>::getSizeForMemoryPrefetch(kernel->kernelInfo.heapInfo.kernelHeapSize, device->getRootDeviceEnvironment()); EncodeMemoryPrefetch<FamilyType>::getSizeForMemoryPrefetch(kernel->kernelInfo.heapInfo.kernelHeapSize, device->getRootDeviceEnvironment());
@@ -1225,7 +1225,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenPipeContro
size_t numPipeControls = MemorySynchronizationCommands<FamilyType>::isBarrierWaRequired(device->getRootDeviceEnvironment()) ? 2 : 1; size_t numPipeControls = MemorySynchronizationCommands<FamilyType>::isBarrierWaRequired(device->getRootDeviceEnvironment()) ? 2 : 1;
auto baseSize = sizeof(typename FamilyType::COMPUTE_WALKER) + auto baseSize = sizeof(typename FamilyType::DefaultWalkerType) +
(sizeof(typename FamilyType::PIPE_CONTROL) * numPipeControls) + (sizeof(typename FamilyType::PIPE_CONTROL) * numPipeControls) +
HardwareCommandsHelper<FamilyType>::getSizeRequiredCS() + HardwareCommandsHelper<FamilyType>::getSizeRequiredCS() +
EncodeMemoryPrefetch<FamilyType>::getSizeForMemoryPrefetch(kernel->kernelInfo.heapInfo.kernelHeapSize, device->getRootDeviceEnvironment()); EncodeMemoryPrefetch<FamilyType>::getSizeForMemoryPrefetch(kernel->kernelInfo.heapInfo.kernelHeapSize, device->getRootDeviceEnvironment());
@@ -1313,9 +1313,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWal
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWalkerIsCalledAndForceSynchronizeWalkerInWpariModeThenWalkerPartitionLogicIsExecuted) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWalkerIsCalledAndForceSynchronizeWalkerInWpariModeThenWalkerPartitionLogicIsExecuted) {
@@ -1332,9 +1332,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWal
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWalkerIsCalledWithPartitionLogicDisabledThenWalkerPartitionLogicIsNotExecuted) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWalkerIsCalledWithPartitionLogicDisabledThenWalkerPartitionLogicIsNotExecuted) {
@@ -1350,9 +1350,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWal
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_DISABLED, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_DISABLED, computeWalker->getPartitionType());
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenQueueIsCreatedWithMultiEngineSupportAndEnqueueIsDoneThenWalkerIsPartitioned) { HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenQueueIsCreatedWithMultiEngineSupportAndEnqueueIsDoneThenWalkerIsPartitioned) {
@@ -1369,9 +1369,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenQueueIsCre
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
EXPECT_EQ(64u, computeWalker->getPartitionSize()); EXPECT_EQ(64u, computeWalker->getPartitionSize());
} }
@@ -1389,11 +1389,11 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWal
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
auto timestampPacket = cmdQ->timestampPacketContainer->peekNodes().at(0); auto timestampPacket = cmdQ->timestampPacketContainer->peekNodes().at(0);
auto expectedPartitionCount = timestampPacket->getPacketsUsed(); auto expectedPartitionCount = timestampPacket->getPacketsUsed();
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_Y, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_Y, computeWalker->getPartitionType());
EXPECT_EQ(1u, computeWalker->getPartitionSize()); EXPECT_EQ(1u, computeWalker->getPartitionSize());
EXPECT_EQ(expectedPartitionCount, static_cast<unsigned int>(debugManager.flags.ExperimentalSetWalkerPartitionCount.get())); EXPECT_EQ(expectedPartitionCount, static_cast<unsigned int>(debugManager.flags.ExperimentalSetWalkerPartitionCount.get()));
} }
@@ -1409,9 +1409,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenProgramWal
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_DISABLED, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_DISABLED, computeWalker->getPartitionType());
EXPECT_EQ(0u, computeWalker->getPartitionSize()); EXPECT_EQ(0u, computeWalker->getPartitionSize());
EXPECT_FALSE(computeWalker->getWorkloadPartitionEnable()); EXPECT_FALSE(computeWalker->getWorkloadPartitionEnable());
} }
@@ -1428,9 +1428,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenThereIsNoL
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_DISABLED, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_DISABLED, computeWalker->getPartitionType());
EXPECT_EQ(0u, computeWalker->getPartitionSize()); EXPECT_EQ(0u, computeWalker->getPartitionSize());
EXPECT_FALSE(computeWalker->getWorkloadPartitionEnable()); EXPECT_FALSE(computeWalker->getWorkloadPartitionEnable());
} }
@@ -1453,9 +1453,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, whenEnqueueIsB
HardwareParse hwParser; HardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ->getUltCommandStreamReceiver().lastFlushedCommandStream); hwParser.parseCommands<FamilyType>(*cmdQ->getUltCommandStreamReceiver().lastFlushedCommandStream);
hwParser.findHardwareCommands<FamilyType>(&cmdQ->getGpgpuCommandStreamReceiver().getIndirectHeap(IndirectHeap::Type::dynamicState, 0)); hwParser.findHardwareCommands<FamilyType>(&cmdQ->getGpgpuCommandStreamReceiver().getIndirectHeap(IndirectHeap::Type::dynamicState, 0));
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_Y, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_Y, computeWalker->getPartitionType());
EXPECT_EQ(1u, computeWalker->getPartitionSize()); EXPECT_EQ(1u, computeWalker->getPartitionSize());
EXPECT_TRUE(computeWalker->getWorkloadPartitionEnable()); EXPECT_TRUE(computeWalker->getWorkloadPartitionEnable());
@@ -1493,9 +1493,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTest, givenOpenClWhe
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
EXPECT_EQ(8u, computeWalker->getPartitionSize()); EXPECT_EQ(8u, computeWalker->getPartitionSize());
GenCmdList storeDataImmList = hwParser.getCommandsList<MI_STORE_DATA_IMM>(); GenCmdList storeDataImmList = hwParser.getCommandsList<MI_STORE_DATA_IMM>();
@@ -1530,9 +1530,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTestDynamicPartition
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
EXPECT_EQ(8u, computeWalker->getPartitionSize()); EXPECT_EQ(8u, computeWalker->getPartitionSize());
} }
@@ -1564,15 +1564,15 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTestStaticPartition,
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
EXPECT_EQ(8u, computeWalker->getPartitionSize()); EXPECT_EQ(8u, computeWalker->getPartitionSize());
} }
HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTestStaticPartition, HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTestStaticPartition,
givenStaticPartitioningWhenEnqueueingNonUnifromKernelThenMultipleActivePartitionsAreSetInCsrAndWparidRegisterIsReconfiguredToStatic) { givenStaticPartitioningWhenEnqueueingNonUnifromKernelThenMultipleActivePartitionsAreSetInCsrAndWparidRegisterIsReconfiguredToStatic) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
using MI_LOAD_REGISTER_MEM = typename FamilyType::MI_LOAD_REGISTER_MEM; using MI_LOAD_REGISTER_MEM = typename FamilyType::MI_LOAD_REGISTER_MEM;
if (!OSInterface::osEnableLocalMemory) { if (!OSInterface::osEnableLocalMemory) {
GTEST_SKIP(); GTEST_SKIP();
@@ -1590,19 +1590,19 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerBasicTestStaticPartition,
HardwareParse hwParser; HardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ->commandStream); hwParser.parseCommands<FamilyType>(*cmdQ->commandStream);
auto firstComputeWalkerItor = find<COMPUTE_WALKER *>(hwParser.cmdList.begin(), hwParser.cmdList.end()); auto firstComputeWalkerItor = find<DefaultWalkerType *>(hwParser.cmdList.begin(), hwParser.cmdList.end());
ASSERT_NE(hwParser.cmdList.end(), firstComputeWalkerItor); ASSERT_NE(hwParser.cmdList.end(), firstComputeWalkerItor);
auto computeWalker = reinterpret_cast<COMPUTE_WALKER *>(*firstComputeWalkerItor); auto computeWalker = reinterpret_cast<DefaultWalkerType *>(*firstComputeWalkerItor);
EXPECT_EQ(COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
EXPECT_EQ(8u, computeWalker->getPartitionSize()); EXPECT_EQ(8u, computeWalker->getPartitionSize());
auto nextCmdItor = firstComputeWalkerItor; auto nextCmdItor = firstComputeWalkerItor;
++nextCmdItor; ++nextCmdItor;
auto secondComputeWalkerItor = find<COMPUTE_WALKER *>(nextCmdItor, hwParser.cmdList.end()); auto secondComputeWalkerItor = find<DefaultWalkerType *>(nextCmdItor, hwParser.cmdList.end());
ASSERT_NE(hwParser.cmdList.end(), secondComputeWalkerItor); ASSERT_NE(hwParser.cmdList.end(), secondComputeWalkerItor);
computeWalker = reinterpret_cast<COMPUTE_WALKER *>(*secondComputeWalkerItor); computeWalker = reinterpret_cast<DefaultWalkerType *>(*secondComputeWalkerItor);
EXPECT_EQ(COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_DISABLED, computeWalker->getPartitionType()); EXPECT_EQ(DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_DISABLED, computeWalker->getPartitionType());
auto workPartitionAllocationGpuVa = commandStreamReceiver.getWorkPartitionAllocationGpuAddress(); auto workPartitionAllocationGpuVa = commandStreamReceiver.getWorkPartitionAllocationGpuAddress();
auto expectedRegister = 0x221Cu; auto expectedRegister = 0x221Cu;
@@ -1625,7 +1625,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, NonDefaultPlatformGpuWalkerTest, givenNonDefaultPla
TagNode<TimestampPackets<uint32_t, TimestampPacketConstants::preferredPacketCount>> timestamp; TagNode<TimestampPackets<uint32_t, TimestampPacketConstants::preferredPacketCount>> timestamp;
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
platformsImpl->clear(); platformsImpl->clear();
@@ -1937,9 +1937,9 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerTestMultiTileDevice, give
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
EXPECT_EQ(2u, computeWalker->getPartitionSize()); EXPECT_EQ(2u, computeWalker->getPartitionSize());
} }
@@ -1958,8 +1958,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, XeHPAndLaterDispatchWalkerTestMultiTileDevice, give
ClHardwareParse hwParser; ClHardwareParse hwParser;
hwParser.parseCommands<FamilyType>(*cmdQ); hwParser.parseCommands<FamilyType>(*cmdQ);
auto computeWalker = reinterpret_cast<typename FamilyType::COMPUTE_WALKER *>(hwParser.cmdWalker); auto computeWalker = reinterpret_cast<typename FamilyType::DefaultWalkerType *>(hwParser.cmdWalker);
ASSERT_NE(nullptr, computeWalker); ASSERT_NE(nullptr, computeWalker);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_X, computeWalker->getPartitionType());
EXPECT_EQ(1u, computeWalker->getPartitionSize()); EXPECT_EQ(1u, computeWalker->getPartitionSize());
} }

View File

@@ -932,7 +932,7 @@ size_t EncodeStates<Family>::getSshHeapSize() {
template <typename Family> template <typename Family>
void InOrderPatchCommandHelpers::PatchCmd<Family>::patchComputeWalker(uint64_t appendCounterValue) { void InOrderPatchCommandHelpers::PatchCmd<Family>::patchComputeWalker(uint64_t appendCounterValue) {
auto walkerCmd = reinterpret_cast<typename Family::COMPUTE_WALKER *>(cmd1); auto walkerCmd = reinterpret_cast<typename Family::DefaultWalkerType *>(cmd1);
auto &postSync = walkerCmd->getPostSync(); auto &postSync = walkerCmd->getPostSync();
postSync.setImmediateData(baseCounterValue + appendCounterValue); postSync.setImmediateData(baseCounterValue + appendCounterValue);
} }

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2021-2023 Intel Corporation * Copyright (C) 2021-2024 Intel Corporation
* *
* SPDX-License-Identifier: MIT * SPDX-License-Identifier: MIT
* *
@@ -127,16 +127,15 @@ namespace NEO {
template <> template <>
void HardwareParse::findHardwareCommands<GenGfxFamily>(IndirectHeap *dsh) { void HardwareParse::findHardwareCommands<GenGfxFamily>(IndirectHeap *dsh) {
typedef typename GenGfxFamily::COMPUTE_WALKER COMPUTE_WALKER; typedef typename GenGfxFamily::DefaultWalkerType DefaultWalkerType;
typedef typename GenGfxFamily::CFE_STATE CFE_STATE; typedef typename GenGfxFamily::CFE_STATE CFE_STATE;
typedef typename GenGfxFamily::PIPELINE_SELECT PIPELINE_SELECT; typedef typename GenGfxFamily::PIPELINE_SELECT PIPELINE_SELECT;
typedef typename GenGfxFamily::STATE_BASE_ADDRESS STATE_BASE_ADDRESS; typedef typename GenGfxFamily::STATE_BASE_ADDRESS STATE_BASE_ADDRESS;
typedef typename GenGfxFamily::INTERFACE_DESCRIPTOR_DATA INTERFACE_DESCRIPTOR_DATA;
typedef typename GenGfxFamily::MI_BATCH_BUFFER_START MI_BATCH_BUFFER_START; typedef typename GenGfxFamily::MI_BATCH_BUFFER_START MI_BATCH_BUFFER_START;
typedef typename GenGfxFamily::MI_LOAD_REGISTER_IMM MI_LOAD_REGISTER_IMM; typedef typename GenGfxFamily::MI_LOAD_REGISTER_IMM MI_LOAD_REGISTER_IMM;
using _3DSTATE_BINDING_TABLE_POOL_ALLOC = typename GenGfxFamily::_3DSTATE_BINDING_TABLE_POOL_ALLOC; using _3DSTATE_BINDING_TABLE_POOL_ALLOC = typename GenGfxFamily::_3DSTATE_BINDING_TABLE_POOL_ALLOC;
itorWalker = find<COMPUTE_WALKER *>(cmdList.begin(), cmdList.end()); itorWalker = find<DefaultWalkerType *>(cmdList.begin(), cmdList.end());
if (itorWalker != cmdList.end()) { if (itorWalker != cmdList.end()) {
cmdWalker = *itorWalker; cmdWalker = *itorWalker;
} }
@@ -191,20 +190,20 @@ void HardwareParse::findHardwareCommands<GenGfxFamily>(IndirectHeap *dsh) {
cmdBindingTableBaseAddress = *itorBindingTableBaseAddress; cmdBindingTableBaseAddress = *itorBindingTableBaseAddress;
} }
// interfaceDescriptorData should be located within COMPUTE_WALKER // interfaceDescriptorData should be located within DefaultWalkerType
if (cmdWalker) { if (cmdWalker) {
// Extract the interfaceDescriptorData // Extract the interfaceDescriptorData
INTERFACE_DESCRIPTOR_DATA &idd = reinterpret_cast<COMPUTE_WALKER *>(cmdWalker)->getInterfaceDescriptor(); auto &idd = reinterpret_cast<DefaultWalkerType *>(cmdWalker)->getInterfaceDescriptor();
cmdInterfaceDescriptorData = &idd; cmdInterfaceDescriptorData = &idd;
} }
} }
template <> template <>
const void *HardwareParse::getStatelessArgumentPointer<GenGfxFamily>(const KernelInfo &kernelInfo, uint32_t indexArg, IndirectHeap &ioh, uint32_t rootDeviceIndex) { const void *HardwareParse::getStatelessArgumentPointer<GenGfxFamily>(const KernelInfo &kernelInfo, uint32_t indexArg, IndirectHeap &ioh, uint32_t rootDeviceIndex) {
typedef typename GenGfxFamily::COMPUTE_WALKER COMPUTE_WALKER; typedef typename GenGfxFamily::DefaultWalkerType DefaultWalkerType;
typedef typename GenGfxFamily::STATE_BASE_ADDRESS STATE_BASE_ADDRESS; typedef typename GenGfxFamily::STATE_BASE_ADDRESS STATE_BASE_ADDRESS;
auto cmdWalker = (COMPUTE_WALKER *)this->cmdWalker; auto cmdWalker = (DefaultWalkerType *)this->cmdWalker;
EXPECT_NE(nullptr, cmdWalker); EXPECT_NE(nullptr, cmdWalker);
auto inlineInComputeWalker = cmdWalker->getInlineDataPointer(); auto inlineInComputeWalker = cmdWalker->getInlineDataPointer();

View File

@@ -4033,12 +4033,12 @@ HWTEST2_F(CommandStreamReceiverHwTest,
givenImmediateFlushTaskWhenCsrHasPreambleCommandsThenDispatchIndirectJumpToImmediateBatchBuffer, givenImmediateFlushTaskWhenCsrHasPreambleCommandsThenDispatchIndirectJumpToImmediateBatchBuffer,
IsAtLeastXeHpCore) { IsAtLeastXeHpCore) {
using MI_BATCH_BUFFER_START = typename FamilyType::MI_BATCH_BUFFER_START; using MI_BATCH_BUFFER_START = typename FamilyType::MI_BATCH_BUFFER_START;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>(); auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>();
auto startOffset = commandStream.getUsed(); auto startOffset = commandStream.getUsed();
*commandStream.getSpaceForCmd<COMPUTE_WALKER>() = FamilyType::cmdInitGpgpuWalker; *commandStream.getSpaceForCmd<DefaultWalkerType>() = FamilyType::cmdInitGpgpuWalker;
uint64_t immediateStartAddress = commandStream.getGpuBase() + startOffset; uint64_t immediateStartAddress = commandStream.getGpuBase() + startOffset;
commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice); commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice);
@@ -4050,7 +4050,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
EXPECT_EQ(immediateStartAddress, bbStartCmd->getBatchBufferStartAddress()); EXPECT_EQ(immediateStartAddress, bbStartCmd->getBatchBufferStartAddress());
startOffset = commandStream.getUsed(); startOffset = commandStream.getUsed();
*commandStream.getSpaceForCmd<COMPUTE_WALKER>() = FamilyType::cmdInitGpgpuWalker; *commandStream.getSpaceForCmd<DefaultWalkerType>() = FamilyType::cmdInitGpgpuWalker;
size_t usedSize = commandStreamReceiver.commandStream.getUsed(); size_t usedSize = commandStreamReceiver.commandStream.getUsed();
commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice); commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice);
@@ -4066,7 +4066,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
IsAtLeastXeHpCore) { IsAtLeastXeHpCore) {
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
using MI_BATCH_BUFFER_END = typename FamilyType::MI_BATCH_BUFFER_END; using MI_BATCH_BUFFER_END = typename FamilyType::MI_BATCH_BUFFER_END;
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>(); auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>();
bool additionalSyncCmd = NEO::MemorySynchronizationCommands<FamilyType>::getSizeForSingleAdditionalSynchronization(commandStreamReceiver.peekRootDeviceEnvironment()) > 0; bool additionalSyncCmd = NEO::MemorySynchronizationCommands<FamilyType>::getSizeForSingleAdditionalSynchronization(commandStreamReceiver.peekRootDeviceEnvironment()) > 0;
@@ -4074,7 +4074,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
auto startOffset = commandStream.getUsed(); auto startOffset = commandStream.getUsed();
auto immediateListCmdBufferAllocation = commandStream.getGraphicsAllocation(); auto immediateListCmdBufferAllocation = commandStream.getGraphicsAllocation();
*commandStream.getSpaceForCmd<COMPUTE_WALKER>() = FamilyType::cmdInitGpgpuWalker; *commandStream.getSpaceForCmd<DefaultWalkerType>() = FamilyType::cmdInitGpgpuWalker;
auto csrTagAllocation = commandStreamReceiver.getTagAllocation(); auto csrTagAllocation = commandStreamReceiver.getTagAllocation();
uint64_t postsyncAddress = csrTagAllocation->getGpuAddress(); uint64_t postsyncAddress = csrTagAllocation->getGpuAddress();
@@ -4109,7 +4109,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
startOffset = commandStream.getUsed(); startOffset = commandStream.getUsed();
EXPECT_EQ(0u, (startOffset % MemoryConstants::cacheLineSize)); EXPECT_EQ(0u, (startOffset % MemoryConstants::cacheLineSize));
*commandStream.getSpaceForCmd<COMPUTE_WALKER>() = FamilyType::cmdInitGpgpuWalker; *commandStream.getSpaceForCmd<DefaultWalkerType>() = FamilyType::cmdInitGpgpuWalker;
completionStamp = commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice); completionStamp = commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice);
EXPECT_EQ(2u, completionStamp.taskCount); EXPECT_EQ(2u, completionStamp.taskCount);
@@ -4145,7 +4145,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
HWTEST2_F(CommandStreamReceiverHwTest, HWTEST2_F(CommandStreamReceiverHwTest,
givenImmediateFlushTaskWhenPreambleIsUsedOrNotThenCsrBufferIsUsedOrImmediateBufferIsUsed, givenImmediateFlushTaskWhenPreambleIsUsedOrNotThenCsrBufferIsUsedOrImmediateBufferIsUsed,
IsAtLeastXeHpCore) { IsAtLeastXeHpCore) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>(); auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>();
commandStreamReceiver.storeMakeResidentAllocations = true; commandStreamReceiver.storeMakeResidentAllocations = true;
@@ -4154,7 +4154,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
auto startOffset = commandStream.getUsed(); auto startOffset = commandStream.getUsed();
auto immediateListCmdBufferAllocation = commandStream.getGraphicsAllocation(); auto immediateListCmdBufferAllocation = commandStream.getGraphicsAllocation();
*commandStream.getSpaceForCmd<COMPUTE_WALKER>() = FamilyType::cmdInitGpgpuWalker; *commandStream.getSpaceForCmd<DefaultWalkerType>() = FamilyType::cmdInitGpgpuWalker;
immediateFlushTaskFlags.hasStallingCmds = true; immediateFlushTaskFlags.hasStallingCmds = true;
auto completionStamp = commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice); auto completionStamp = commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice);
@@ -4179,7 +4179,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
startOffset = commandStream.getUsed(); startOffset = commandStream.getUsed();
*commandStream.getSpaceForCmd<COMPUTE_WALKER>() = FamilyType::cmdInitGpgpuWalker; *commandStream.getSpaceForCmd<DefaultWalkerType>() = FamilyType::cmdInitGpgpuWalker;
immediateFlushTaskFlags.hasRelaxedOrderingDependencies = true; immediateFlushTaskFlags.hasRelaxedOrderingDependencies = true;
completionStamp = commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice); completionStamp = commandStreamReceiver.flushImmediateTask(commandStream, startOffset, immediateFlushTaskFlags, *pDevice);
@@ -4204,7 +4204,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
HWTEST2_F(CommandStreamReceiverHwTest, HWTEST2_F(CommandStreamReceiverHwTest,
givenImmediateFlushTaskWhenFlushOperationFailsThenExpectNoBatchBufferSentAndCorrectFailCompletionReturned, givenImmediateFlushTaskWhenFlushOperationFailsThenExpectNoBatchBufferSentAndCorrectFailCompletionReturned,
IsAtLeastXeHpCore) { IsAtLeastXeHpCore) {
using COMPUTE_WALKER = typename FamilyType::COMPUTE_WALKER; using DefaultWalkerType = typename FamilyType::DefaultWalkerType;
auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>(); auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>();
commandStreamReceiver.storeMakeResidentAllocations = true; commandStreamReceiver.storeMakeResidentAllocations = true;
@@ -4213,7 +4213,7 @@ HWTEST2_F(CommandStreamReceiverHwTest,
auto startOffset = commandStream.getUsed(); auto startOffset = commandStream.getUsed();
auto immediateListCmdBufferAllocation = commandStream.getGraphicsAllocation(); auto immediateListCmdBufferAllocation = commandStream.getGraphicsAllocation();
*commandStream.getSpaceForCmd<COMPUTE_WALKER>() = FamilyType::cmdInitGpgpuWalker; *commandStream.getSpaceForCmd<DefaultWalkerType>() = FamilyType::cmdInitGpgpuWalker;
immediateFlushTaskFlags.blockingAppend = true; immediateFlushTaskFlags.blockingAppend = true;
commandStreamReceiver.flushReturnValue = NEO::SubmissionStatus::failed; commandStreamReceiver.flushReturnValue = NEO::SubmissionStatus::failed;

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2021-2023 Intel Corporation * Copyright (C) 2021-2024 Intel Corporation
* *
* SPDX-License-Identifier: MIT * SPDX-License-Identifier: MIT
* *
@@ -1317,7 +1317,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, WalkerPartitionTests, givenStaticPartitionIsPreferr
auto partitionCount = computePartitionCountAndSetPartitionType<FamilyType>(&walker, NEO::RequiredPartitionDim::none, 4u, preferredStaticPartitioning, &staticPartitioning); auto partitionCount = computePartitionCountAndSetPartitionType<FamilyType>(&walker, NEO::RequiredPartitionDim::none, 4u, preferredStaticPartitioning, &staticPartitioning);
EXPECT_FALSE(staticPartitioning); EXPECT_FALSE(staticPartitioning);
EXPECT_EQ(1u, partitionCount); EXPECT_EQ(1u, partitionCount);
EXPECT_EQ(FamilyType::COMPUTE_WALKER::PARTITION_TYPE::PARTITION_TYPE_DISABLED, walker.getPartitionType()); EXPECT_EQ(FamilyType::DefaultWalkerType::PARTITION_TYPE::PARTITION_TYPE_DISABLED, walker.getPartitionType());
testArgs.partitionCount = partitionCount; testArgs.partitionCount = partitionCount;
testArgs.staticPartitioning = staticPartitioning; testArgs.staticPartitioning = staticPartitioning;