From f37943e1de56ba4e5a6692f690dd2ebdbaf70717 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20Zwoli=C5=84ski?= Date: Fri, 12 Jul 2024 11:50:40 +0000 Subject: [PATCH] fix: adjust tests to enabled global allocator 1/n MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Related-To: NEO-7063 Signed-off-by: Fabian ZwoliƄski --- .../test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp | 5 +++++ .../test/unit_tests/sources/cmdlist/test_cmdlist_6.cpp | 7 ++++++- .../core/test/unit_tests/sources/kernel/test_kernel.cpp | 7 +++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp index 5a4eab83c4..a7a3f50f2a 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_1.cpp @@ -115,6 +115,9 @@ TEST_F(CommandListCreate, whenCommandListIsCreatedThenItIsInitialized) { DebugManagerStateRestore restorer; debugManager.flags.SelectCmdListHeapAddressModel.set(0); + auto neoDevice = device->getNEODevice(); + auto bindlessHeapsHelper = neoDevice->getExecutionEnvironment()->rootDeviceEnvironments[neoDevice->getRootDeviceIndex()]->bindlessHeapsHelper.get(); + ze_result_t returnValue; std::unique_ptr commandList(CommandList::create(productFamily, device, NEO::EngineGroupType::renderCompute, 0u, returnValue, false)); ASSERT_NE(nullptr, commandList); @@ -136,6 +139,8 @@ TEST_F(CommandListCreate, whenCommandListIsCreatedThenItIsInitialized) { auto heapType = static_cast(i); if (NEO::HeapType::dynamicState == heapType && !device->getHwInfo().capabilityTable.supportsImages) { ASSERT_EQ(commandList->getCmdContainer().getIndirectHeap(heapType), nullptr); + } else if (NEO::HeapType::surfaceState == heapType && bindlessHeapsHelper) { + ASSERT_EQ(commandList->getCmdContainer().getIndirectHeap(heapType), nullptr); } else { ASSERT_NE(commandList->getCmdContainer().getIndirectHeap(heapType), nullptr); ++numAllocations; diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_6.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_6.cpp index 5ce679d034..9216f7fc57 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_6.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_cmdlist_6.cpp @@ -1277,6 +1277,7 @@ HWTEST2_F(ImmediateCmdListSharedHeapsTest, givenMultipleCommandListsUsingSharedH using SAMPLER_STATE = typename FamilyType::SAMPLER_STATE; using SAMPLER_BORDER_COLOR_STATE = typename FamilyType::SAMPLER_BORDER_COLOR_STATE; + auto bindlessHeapsHelper = neoDevice->getExecutionEnvironment()->rootDeviceEnvironments[neoDevice->getRootDeviceIndex()]->bindlessHeapsHelper.get(); auto &cmdContainer = commandListImmediate->commandContainer; EXPECT_TRUE(commandListImmediate->isFlushTaskSubmissionEnabled); @@ -1325,7 +1326,11 @@ HWTEST2_F(ImmediateCmdListSharedHeapsTest, givenMultipleCommandListsUsingSharedH auto &sbaCmd = *genCmdCast(*sbaCmds[0]); if (this->dshRequired) { EXPECT_TRUE(sbaCmd.getDynamicStateBaseAddressModifyEnable()); - EXPECT_EQ(csrDshHeap->getHeapGpuBase(), sbaCmd.getDynamicStateBaseAddress()); + if (bindlessHeapsHelper) { + EXPECT_EQ(bindlessHeapsHelper->getGlobalHeapsBase(), sbaCmd.getDynamicStateBaseAddress()); + } else { + EXPECT_EQ(csrDshHeap->getHeapGpuBase(), sbaCmd.getDynamicStateBaseAddress()); + } } else { EXPECT_FALSE(sbaCmd.getDynamicStateBaseAddressModifyEnable()); EXPECT_EQ(0u, sbaCmd.getDynamicStateBaseAddress()); diff --git a/level_zero/core/test/unit_tests/sources/kernel/test_kernel.cpp b/level_zero/core/test/unit_tests/sources/kernel/test_kernel.cpp index 1ce6df277c..92c9eb0228 100644 --- a/level_zero/core/test/unit_tests/sources/kernel/test_kernel.cpp +++ b/level_zero/core/test/unit_tests/sources/kernel/test_kernel.cpp @@ -2875,6 +2875,7 @@ HWTEST2_F(SetKernelArg, givenBindlessKernelAndNoAvailableSpaceOnSshWhenSetArgIma mockMemManager->failInDevicePool = true; mockMemManager->failAllocateSystemMemory = true; + mockMemManager->failAllocate32Bit = true; bindlessHelper->globalSsh->getSpace(bindlessHelper->globalSsh->getAvailableSpace()); ret = kernel->setArgImage(3, sizeof(imageHW.get()), &handle); @@ -3009,6 +3010,7 @@ HWTEST2_F(SetKernelArg, givenGlobalBindlessHelperImageViewAndNoAvailableSpaceOnS mockMemManager->failInDevicePool = true; mockMemManager->failAllocateSystemMemory = true; + mockMemManager->failAllocate32Bit = true; bindlessHelper->globalSsh->getSpace(bindlessHelper->globalSsh->getAvailableSpace()); ze_image_handle_t imageViewHandle; @@ -3029,6 +3031,9 @@ HWTEST2_F(SetKernelArg, givenGlobalBindlessHelperImageViewAndNoAvailableSpaceOnS HWTEST2_F(SetKernelArg, givenNoGlobalBindlessHelperAndImageViewWhenAllocatingBindlessSlotThenSlotIsNotAllocated, ImageSupport) { createKernel(); + neoDevice->getExecutionEnvironment()->rootDeviceEnvironments[neoDevice->getRootDeviceIndex()]->bindlessHeapsHelper.reset(); + ASSERT_EQ(nullptr, neoDevice->getExecutionEnvironment()->rootDeviceEnvironments[neoDevice->getRootDeviceIndex()]->bindlessHeapsHelper.get()); + auto &imageArg = const_cast(kernel->kernelImmData->getDescriptor().payloadMappings.explicitArgs[3].template as()); auto &addressingMode = kernel->kernelImmData->getDescriptor().kernelAttributes.imageAddressingMode; const_cast(addressingMode) = NEO::KernelDescriptor::Bindless; @@ -3122,6 +3127,7 @@ HWTEST2_F(SetKernelArg, givenBindlessKernelAndNoAvailableSpaceOnSshWhenSetArgRed mockMemManager->failInDevicePool = true; mockMemManager->failAllocateSystemMemory = true; + mockMemManager->failAllocate32Bit = true; bindlessHelper->globalSsh->getSpace(bindlessHelper->globalSsh->getAvailableSpace()); ret = kernel->setArgRedescribedImage(3, handle); @@ -3156,6 +3162,7 @@ HWTEST2_F(SetKernelArg, givenBindlessKernelAndNoAvailableSpaceOnSshWhenSetArgBuf mockMemManager->failInDevicePool = true; mockMemManager->failAllocateSystemMemory = true; + mockMemManager->failAllocate32Bit = true; auto ret = mockKernel.setArgBuffer(0, sizeof(svmAllocation), &svmAllocation); EXPECT_EQ(ZE_RESULT_ERROR_OUT_OF_HOST_MEMORY, ret);