Skip to content

Commit 68a15d7

Browse files
L0::Event use TSP helper functions
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
1 parent 43fecb9 commit 68a15d7

File tree

8 files changed

+27
-22
lines changed

8 files changed

+27
-22
lines changed

level_zero/core/source/cmdlist/cmdlist_hw.inl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ ze_result_t CommandListCoreFamily<gfxCoreFamily>::appendEventReset(ze_event_hand
242242
uint32_t packetsToReset = 1;
243243

244244
if (event->isTimestampEvent) {
245-
baseAddr += NEO::TimestampPackets<uint32_t>::getContextEndOffset();
245+
baseAddr += event->getContextEndOffset();
246246
packetsToReset = EventPacketsCount::eventPackets;
247247
event->resetPackets();
248248
}
@@ -263,7 +263,7 @@ ze_result_t CommandListCoreFamily<gfxCoreFamily>::appendEventReset(ze_event_hand
263263
Event::STATE_CLEARED,
264264
commandContainer.getDevice()->getHardwareInfo(),
265265
args);
266-
baseAddr += NEO::TimestampPackets<uint32_t>::getSinglePacketSize();
266+
baseAddr += event->getSinglePacketSize();
267267
}
268268
}
269269
return ZE_RESULT_SUCCESS;
@@ -1525,7 +1525,7 @@ ze_result_t CommandListCoreFamily<gfxCoreFamily>::appendSignalEvent(ze_event_han
15251525
uint64_t baseAddr = event->getGpuAddress(this->device);
15261526
size_t eventSignalOffset = 0;
15271527
if (event->isTimestampEvent) {
1528-
eventSignalOffset = NEO::TimestampPackets<uint32_t>::getContextEndOffset();
1528+
eventSignalOffset = event->getContextEndOffset();
15291529
}
15301530

15311531
if (isCopyOnly()) {
@@ -1575,15 +1575,15 @@ ze_result_t CommandListCoreFamily<gfxCoreFamily>::appendWaitOnEvents(uint32_t nu
15751575
uint32_t packetsToWait = event->getPacketsInUse();
15761576

15771577
if (event->isTimestampEvent) {
1578-
gpuAddr += NEO::TimestampPackets<uint32_t>::getContextEndOffset();
1578+
gpuAddr += event->getContextEndOffset();
15791579
}
15801580
for (uint32_t i = 0u; i < packetsToWait; i++) {
15811581
NEO::EncodeSempahore<GfxFamily>::addMiSemaphoreWaitCommand(*commandContainer.getCommandStream(),
15821582
gpuAddr,
15831583
eventStateClear,
15841584
COMPARE_OPERATION::COMPARE_OPERATION_SAD_NOT_EQUAL_SDD);
15851585

1586-
gpuAddr += NEO::TimestampPackets<uint32_t>::getSinglePacketSize();
1586+
gpuAddr += event->getSinglePacketSize();
15871587
}
15881588
}
15891589

level_zero/core/source/event/event.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ struct Event : _ze_event_handle_t {
6363
virtual size_t getContextEndOffset() const = 0;
6464
virtual size_t getGlobalStartOffset() const = 0;
6565
virtual size_t getGlobalEndOffset() const = 0;
66+
virtual size_t getSinglePacketSize() const = 0;
6667
virtual size_t getTimestampSizeInDw() const = 0;
6768
void *hostAddress = nullptr;
6869
uint32_t kernelCount = 1u;
@@ -115,6 +116,7 @@ struct EventImp : public Event {
115116
size_t getContextEndOffset() const override { return NEO::TimestampPackets<TagSizeT>::getContextEndOffset(); }
116117
size_t getGlobalStartOffset() const override { return NEO::TimestampPackets<TagSizeT>::getGlobalStartOffset(); }
117118
size_t getGlobalEndOffset() const override { return NEO::TimestampPackets<TagSizeT>::getGlobalEndOffset(); }
119+
size_t getSinglePacketSize() const override { return NEO::TimestampPackets<TagSizeT>::getSinglePacketSize(); };
118120

119121
std::unique_ptr<NEO::TimestampPackets<TagSizeT>[]> kernelTimestampsData;
120122

level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -989,6 +989,7 @@ class MockEvent : public ::L0::Event {
989989
size_t getContextEndOffset() const override { return 4; }
990990
size_t getGlobalStartOffset() const override { return 8; }
991991
size_t getGlobalEndOffset() const override { return 12; }
992+
size_t getSinglePacketSize() const override { return 16; };
992993

993994
uint32_t getPacketsInUse() override { return 1; }
994995
void resetPackets() override{};
@@ -1780,8 +1781,8 @@ HWTEST2_F(CommandListCreate, givenCopyCommandListWhenProfilingBeforeCommandForCo
17801781
auto event = std::unique_ptr<L0::Event>(L0::Event::create<uint32_t>(eventPool.get(), &eventDesc, device));
17811782

17821783
auto baseAddr = event->getGpuAddress(device);
1783-
auto contextOffset = NEO::TimestampPackets<uint32_t>::getContextStartOffset();
1784-
auto globalOffset = NEO::TimestampPackets<uint32_t>::getGlobalStartOffset();
1784+
auto contextOffset = event->getContextStartOffset();
1785+
auto globalOffset = event->getGlobalStartOffset();
17851786
EXPECT_EQ(baseAddr, event->getPacketAddress(device));
17861787

17871788
commandList->appendEventForProfilingCopyCommand(event->toHandle(), true);
@@ -1817,8 +1818,8 @@ HWTEST2_F(CommandListCreate, givenCopyCommandListWhenProfilingAfterCommandForCop
18171818

18181819
commandList->appendEventForProfilingCopyCommand(event->toHandle(), false);
18191820

1820-
auto contextOffset = NEO::TimestampPackets<uint32_t>::getContextEndOffset();
1821-
auto globalOffset = NEO::TimestampPackets<uint32_t>::getGlobalEndOffset();
1821+
auto contextOffset = event->getContextEndOffset();
1822+
auto globalOffset = event->getGlobalEndOffset();
18221823
auto baseAddr = event->getGpuAddress(device);
18231824
GenCmdList cmdList;
18241825
ASSERT_TRUE(FamilyType::PARSE::parseCommandBuffer(

level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_event_reset.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ HWTEST2_F(CommandListAppendEventReset, givenTimestampEventUsedInResetThenPipeCon
138138
commandList->appendEventReset(event->toHandle());
139139
ASSERT_EQ(1u, event->getPacketsInUse());
140140

141-
auto contextOffset = NEO::TimestampPackets<uint32_t>::getContextEndOffset();
141+
auto contextOffset = event->getContextEndOffset();
142142
auto baseAddr = event->getGpuAddress(device);
143143
auto gpuAddress = ptrOffset(baseAddr, contextOffset);
144144

@@ -158,7 +158,7 @@ HWTEST2_F(CommandListAppendEventReset, givenTimestampEventUsedInResetThenPipeCon
158158
EXPECT_EQ(cmd->getAddress(), uint32_t(gpuAddress));
159159
EXPECT_FALSE(cmd->getDcFlushEnable());
160160
postSyncFound++;
161-
gpuAddress += NEO::TimestampPackets<uint32_t>::getSinglePacketSize();
161+
gpuAddress += event->getSinglePacketSize();
162162
}
163163
}
164164
ASSERT_EQ(EventPacketsCount::eventPackets, postSyncFound);

level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_signal_event.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ HWTEST2_F(CommandListAppendSignalEvent, givenTimestampEventUsedInSignalThenPipeC
201201
auto event = std::unique_ptr<L0::Event>(L0::Event::create<uint32_t>(eventPool.get(), &eventDesc, device));
202202

203203
commandList->appendSignalEvent(event->toHandle());
204-
auto contextOffset = NEO::TimestampPackets<uint32_t>::getContextEndOffset();
204+
auto contextOffset = event->getContextEndOffset();
205205
auto baseAddr = event->getGpuAddress(device);
206206
auto gpuAddress = ptrOffset(baseAddr, contextOffset);
207207

level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_append_wait_on_events.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ HWTEST_F(CommandListAppendWaitOnEvent, WhenAppendingWaitOnTimestampEventWithThre
156156
auto usedSpaceAfter = commandList->commandContainer.getCommandStream()->getUsed();
157157
ASSERT_GT(usedSpaceAfter, usedSpaceBefore);
158158

159-
auto gpuAddress = event->getGpuAddress(device) + NEO::TimestampPackets<uint32_t>::getContextEndOffset();
159+
auto gpuAddress = event->getGpuAddress(device) + event->getContextEndOffset();
160160

161161
GenCmdList cmdList;
162162
ASSERT_TRUE(FamilyType::PARSE::parseCommandBuffer(cmdList,
@@ -178,7 +178,7 @@ HWTEST_F(CommandListAppendWaitOnEvent, WhenAppendingWaitOnTimestampEventWithThre
178178
EXPECT_EQ(MI_SEMAPHORE_WAIT::WAIT_MODE::WAIT_MODE_POLLING_MODE, cmd->getWaitMode());
179179

180180
semaphoreWaitsFound++;
181-
gpuAddress += NEO::TimestampPackets<uint32_t>::getSinglePacketSize();
181+
gpuAddress += event->getSinglePacketSize();
182182
}
183183
ASSERT_EQ(3u, semaphoreWaitsFound);
184184
}
@@ -209,7 +209,7 @@ HWTEST_F(CommandListAppendWaitOnEvent, WhenAppendingWaitOnTimestampEventWithThre
209209
auto usedSpaceAfter = commandList->commandContainer.getCommandStream()->getUsed();
210210
ASSERT_GT(usedSpaceAfter, usedSpaceBefore);
211211

212-
auto gpuAddress = event->getGpuAddress(device) + NEO::TimestampPackets<uint32_t>::getContextEndOffset();
212+
auto gpuAddress = event->getGpuAddress(device) + event->getContextEndOffset();
213213

214214
GenCmdList cmdList;
215215
ASSERT_TRUE(FamilyType::PARSE::parseCommandBuffer(cmdList,
@@ -231,7 +231,7 @@ HWTEST_F(CommandListAppendWaitOnEvent, WhenAppendingWaitOnTimestampEventWithThre
231231
EXPECT_EQ(MI_SEMAPHORE_WAIT::WAIT_MODE::WAIT_MODE_POLLING_MODE, cmd->getWaitMode());
232232

233233
semaphoreWaitsFound++;
234-
gpuAddress += NEO::TimestampPackets<uint32_t>::getSinglePacketSize();
234+
gpuAddress += event->getSinglePacketSize();
235235
}
236236
ASSERT_EQ(9u, semaphoreWaitsFound);
237237
}

level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_blit.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -208,10 +208,10 @@ HWTEST2_F(AppendMemoryCopy, givenCopyCommandListWhenTimestampPassedToMemoryCopyR
208208
GenCmdList cmdList;
209209

210210
auto baseAddr = event->getGpuAddress(device);
211-
auto contextStartOffset = NEO::TimestampPackets<uint32_t>::getContextStartOffset();
212-
auto globalStartOffset = NEO::TimestampPackets<uint32_t>::getGlobalStartOffset();
213-
auto contextEndOffset = NEO::TimestampPackets<uint32_t>::getContextEndOffset();
214-
auto globalEndOffset = NEO::TimestampPackets<uint32_t>::getGlobalEndOffset();
211+
auto contextStartOffset = event->getContextStartOffset();
212+
auto globalStartOffset = event->getGlobalStartOffset();
213+
auto contextEndOffset = event->getContextEndOffset();
214+
auto globalEndOffset = event->getGlobalEndOffset();
215215

216216
ASSERT_TRUE(FamilyType::PARSE::parseCommandBuffer(
217217
cmdList, ptrOffset(commandList->commandContainer.getCommandStream()->getCpuBase(), 0), commandList->commandContainer.getCommandStream()->getUsed()));

level_zero/core/test/unit_tests/sources/event/test_event.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -499,14 +499,14 @@ TEST_F(TimestampEventCreate, givenEventTimestampWhenPacketCountIsSetThenCorrectO
499499
event->setPacketsInUse(4u);
500500
EXPECT_EQ(4u, event->getPacketsInUse());
501501

502-
gpuAddr += (4u * NEO::TimestampPackets<uint32_t>::getSinglePacketSize());
502+
gpuAddr += (4u * event->getSinglePacketSize());
503503

504504
event->kernelCount = 2;
505505
event->setPacketsInUse(2u);
506506
EXPECT_EQ(6u, event->getPacketsInUse());
507507
EXPECT_EQ(gpuAddr, event->getPacketAddress(device));
508508

509-
gpuAddr += (2u * NEO::TimestampPackets<uint32_t>::getSinglePacketSize());
509+
gpuAddr += (2u * event->getSinglePacketSize());
510510
event->kernelCount = 3;
511511
EXPECT_EQ(gpuAddr, event->getPacketAddress(device));
512512
EXPECT_EQ(7u, event->getPacketsInUse());
@@ -922,6 +922,8 @@ HWTEST_F(EventSizeTests, whenCreatingEventPoolThenUseCorrectSizeAndAlignment) {
922922
EXPECT_EQ(timestampPacketTypeSize * 2, eventObj0->getContextEndOffset());
923923
EXPECT_EQ(timestampPacketTypeSize * 3, eventObj0->getGlobalEndOffset());
924924

925+
EXPECT_EQ(timestampPacketTypeSize * 4, eventObj0->getSinglePacketSize());
926+
925927
auto hostPtrDiff = ptrDiff(eventObj1->getHostAddress(), eventObj0->getHostAddress());
926928
EXPECT_EQ(expectedSize, hostPtrDiff);
927929
}

0 commit comments

Comments
 (0)