mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-04 15:53:45 +08:00
Changes to SW tags
Add SW tags to synchronization points Add ID sequence numbers Add new allocation type Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
5f491ed22b
commit
5c236a62fd
@@ -156,16 +156,6 @@ HWTEST_F(SoftwareTagsManagerTests, whenTestTagIsInsertedThenItIsSuccessful) {
|
||||
freeTestCmdStream();
|
||||
}
|
||||
|
||||
HWTEST_F(SoftwareTagsManagerTests, whenVeryLargeTagIsInsertedThenItIsNotSuccessful) {
|
||||
initializeTestCmdStream<FamilyType>();
|
||||
|
||||
tagsManager->insertTag<FamilyType, VeryLargeTag>(*testCmdStream.get(), *pDevice);
|
||||
|
||||
EXPECT_EQ(0u, testCmdStream->getUsed());
|
||||
|
||||
freeTestCmdStream();
|
||||
}
|
||||
|
||||
HWTEST_F(SoftwareTagsManagerTests, givenSoftwareManagerWithMaxTagsReachedWhenTagIsInsertedThenItIsNotSuccessful) {
|
||||
using MI_NOOP = typename FamilyType::MI_NOOP;
|
||||
|
||||
@@ -186,6 +176,28 @@ HWTEST_F(SoftwareTagsManagerTests, givenSoftwareManagerWithMaxTagsReachedWhenTag
|
||||
freeTestCmdStream();
|
||||
}
|
||||
|
||||
HWTEST_F(SoftwareTagsManagerTests, givenSoftwareManagerWithMaxHeapReachedWhenTagIsInsertedThenItIsNotSuccessful) {
|
||||
using MI_NOOP = typename FamilyType::MI_NOOP;
|
||||
|
||||
initializeTestCmdStream<FamilyType>();
|
||||
|
||||
size_t prevHeapOffset = tagsManager->getCurrentHeapOffset();
|
||||
|
||||
uint32_t i = 0;
|
||||
while (tagsManager->getCurrentHeapOffset() + sizeof(VeryLargeTag) <= NEO::SWTagsManager::MAX_TAG_HEAP_SIZE) {
|
||||
tagsManager->insertTag<FamilyType, VeryLargeTag>(*testCmdStream.get(), *pDevice);
|
||||
i++;
|
||||
}
|
||||
|
||||
EXPECT_EQ(tagsManager->getCurrentHeapOffset(), prevHeapOffset + (i * sizeof(VeryLargeTag)));
|
||||
|
||||
tagsManager->insertTag<FamilyType, VeryLargeTag>(*testCmdStream.get(), *pDevice);
|
||||
|
||||
EXPECT_EQ(tagsManager->getCurrentHeapOffset(), prevHeapOffset + (i * sizeof(VeryLargeTag)));
|
||||
|
||||
freeTestCmdStream();
|
||||
}
|
||||
|
||||
TEST(SoftwareTagsManagerMultiDeviceTests, givenEnableSWTagsAndCreateMultipleSubDevicesWhenDeviceCreatedThenSWTagsManagerIsInitializedOnlyOnce) {
|
||||
DebugManagerStateRestore dbgRestorer;
|
||||
DebugManager.flags.EnableSWTags.set(true);
|
||||
@@ -202,8 +214,8 @@ TEST(SoftwareTagsManagerMultiDeviceTests, givenEnableSWTagsAndCreateMultipleSubD
|
||||
|
||||
struct SoftwareTagsParametrizedTests : public ::testing::TestWithParam<SWTags::OpCode> {
|
||||
void SetUp() override {
|
||||
tagMap.emplace(OpCode::KernelName, std::make_unique<KernelNameTag>(""));
|
||||
tagMap.emplace(OpCode::PipeControlReason, std::make_unique<PipeControlReasonTag>(""));
|
||||
tagMap.emplace(OpCode::KernelName, std::make_unique<KernelNameTag>("", 0u));
|
||||
tagMap.emplace(OpCode::PipeControlReason, std::make_unique<PipeControlReasonTag>("", 0u));
|
||||
}
|
||||
|
||||
std::map<OpCode, std::unique_ptr<BaseTag>> tagMap;
|
||||
|
||||
Reference in New Issue
Block a user