diff --git a/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper.cpp b/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper.cpp index c5b89cb9ef..36756c2133 100644 --- a/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper.cpp +++ b/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper.cpp @@ -55,7 +55,7 @@ bool L0GfxCoreHelper::enableStateBaseAddressTracking(const NEO::RootDeviceEnviro return !!NEO::debugManager.flags.EnableStateBaseAddressTracking.get(); } auto &l0GfxCoreHelper = rootDeviceEnvironment.getHelper(); - return l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(); + return l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(rootDeviceEnvironment); } bool L0GfxCoreHelper::enableImmediateCmdListHeapSharing(const NEO::RootDeviceEnvironment &rootDeviceEnvironment, bool cmdlistSupport) { @@ -100,7 +100,7 @@ NEO::HeapAddressModel L0GfxCoreHelper::getHeapAddressModel(const NEO::RootDevice return static_cast(NEO::debugManager.flags.SelectCmdListHeapAddressModel.get()); } auto &l0GfxCoreHelper = rootDeviceEnvironment.getHelper(); - return l0GfxCoreHelper.getPlatformHeapAddressModel(); + return l0GfxCoreHelper.getPlatformHeapAddressModel(rootDeviceEnvironment); } bool L0GfxCoreHelper::dispatchCmdListBatchBufferAsPrimary(const NEO::RootDeviceEnvironment &rootDeviceEnvironment, bool allowPrimary) { diff --git a/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper.h b/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper.h index 3d16832896..f3d89fc82a 100644 --- a/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper.h +++ b/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper.h @@ -79,12 +79,12 @@ class L0GfxCoreHelper : public NEO::ApiGfxCoreHelper { virtual bool platformSupportsStateComputeModeTracking() const = 0; virtual bool platformSupportsFrontEndTracking() const = 0; virtual bool platformSupportsPipelineSelectTracking() const = 0; - virtual bool platformSupportsStateBaseAddressTracking() const = 0; + virtual bool platformSupportsStateBaseAddressTracking(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const = 0; virtual bool platformSupportsPrimaryBatchBufferCmdList() const = 0; virtual bool isZebinAllowed(const NEO::Debugger *debugger) const = 0; virtual uint32_t getEventMaxKernelCount(const NEO::HardwareInfo &hwInfo) const = 0; virtual uint32_t getEventBaseMaxPacketCount(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const = 0; - virtual NEO::HeapAddressModel getPlatformHeapAddressModel() const = 0; + virtual NEO::HeapAddressModel getPlatformHeapAddressModel(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const = 0; virtual ze_rtas_format_exp_t getSupportedRTASFormat() const = 0; virtual bool platformSupportsImmediateComputeFlushTask() const = 0; virtual zet_debug_regset_type_intel_gpu_t getRegsetTypeForLargeGrfDetection() const = 0; @@ -125,12 +125,12 @@ class L0GfxCoreHelperHw : public L0GfxCoreHelper { bool platformSupportsStateComputeModeTracking() const override; bool platformSupportsFrontEndTracking() const override; bool platformSupportsPipelineSelectTracking() const override; - bool platformSupportsStateBaseAddressTracking() const override; + bool platformSupportsStateBaseAddressTracking(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const override; bool platformSupportsPrimaryBatchBufferCmdList() const override; bool isZebinAllowed(const NEO::Debugger *debugger) const override; uint32_t getEventMaxKernelCount(const NEO::HardwareInfo &hwInfo) const override; uint32_t getEventBaseMaxPacketCount(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const override; - NEO::HeapAddressModel getPlatformHeapAddressModel() const override; + NEO::HeapAddressModel getPlatformHeapAddressModel(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const override; ze_rtas_format_exp_t getSupportedRTASFormat() const override; bool platformSupportsImmediateComputeFlushTask() const override; zet_debug_regset_type_intel_gpu_t getRegsetTypeForLargeGrfDetection() const override; diff --git a/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper_skl_to_tgllp.inl b/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper_skl_to_tgllp.inl index dbb6c4812f..3df2dd0709 100644 --- a/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper_skl_to_tgllp.inl +++ b/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper_skl_to_tgllp.inl @@ -30,7 +30,7 @@ bool L0GfxCoreHelperHw::platformSupportsPipelineSelectTracking() const { } template -bool L0GfxCoreHelperHw::platformSupportsStateBaseAddressTracking() const { +bool L0GfxCoreHelperHw::platformSupportsStateBaseAddressTracking(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const { return false; } @@ -50,7 +50,7 @@ bool L0GfxCoreHelperHw::isZebinAllowed(const NEO::Debugger *debugger) co } template -NEO::HeapAddressModel L0GfxCoreHelperHw::getPlatformHeapAddressModel() const { +NEO::HeapAddressModel L0GfxCoreHelperHw::getPlatformHeapAddressModel(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const { return NEO::HeapAddressModel::privateHeaps; } diff --git a/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper_xehp_and_later.inl b/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper_xehp_and_later.inl index 1f50e2a378..97c5536982 100644 --- a/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper_xehp_and_later.inl +++ b/level_zero/core/source/gfx_core_helpers/l0_gfx_core_helper_xehp_and_later.inl @@ -33,7 +33,7 @@ bool L0GfxCoreHelperHw::platformSupportsPipelineSelectTracking() const { } template -bool L0GfxCoreHelperHw::platformSupportsStateBaseAddressTracking() const { +bool L0GfxCoreHelperHw::platformSupportsStateBaseAddressTracking(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const { return false; } @@ -63,7 +63,7 @@ bool L0GfxCoreHelperHw::isZebinAllowed(const NEO::Debugger *debugger) co } template -NEO::HeapAddressModel L0GfxCoreHelperHw::getPlatformHeapAddressModel() const { +NEO::HeapAddressModel L0GfxCoreHelperHw::getPlatformHeapAddressModel(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const { return NEO::HeapAddressModel::privateHeaps; } diff --git a/level_zero/core/source/xe_hpc_core/l0_gfx_core_helper_xe_hpc_core.cpp b/level_zero/core/source/xe_hpc_core/l0_gfx_core_helper_xe_hpc_core.cpp index 7fd00a2a63..8b2b9c6b9a 100644 --- a/level_zero/core/source/xe_hpc_core/l0_gfx_core_helper_xe_hpc_core.cpp +++ b/level_zero/core/source/xe_hpc_core/l0_gfx_core_helper_xe_hpc_core.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021-2023 Intel Corporation + * Copyright (C) 2021-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -31,7 +31,7 @@ bool L0GfxCoreHelperHw::alwaysAllocateEventInLocalMem() const { } template <> -bool L0GfxCoreHelperHw::platformSupportsStateBaseAddressTracking() const { +bool L0GfxCoreHelperHw::platformSupportsStateBaseAddressTracking(const NEO::RootDeviceEnvironment &rootDeviceEnvironment) const { return true; } diff --git a/level_zero/core/test/unit_tests/gen11/test_l0_gfx_core_helper_gen11.cpp b/level_zero/core/test/unit_tests/gen11/test_l0_gfx_core_helper_gen11.cpp index 48306a9dfc..cc201a61cb 100644 --- a/level_zero/core/test/unit_tests/gen11/test_l0_gfx_core_helper_gen11.cpp +++ b/level_zero/core/test/unit_tests/gen11/test_l0_gfx_core_helper_gen11.cpp @@ -38,12 +38,12 @@ GEN11TEST_F(L0GfxCoreHelperTestGen11, GivenGen11WhenCheckingL0HelperForPipelineS GEN11TEST_F(L0GfxCoreHelperTestGen11, GivenGen11WhenCheckingL0HelperForStateBaseAddressTrackingSupportThenReturnFalse) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_FALSE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking()); + EXPECT_FALSE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(device->getNEODevice()->getRootDeviceEnvironment())); } GEN11TEST_F(L0GfxCoreHelperTestGen11, GivenGen11WhenGettingPlatformDefaultHeapAddressModelThenReturnPrivateHeaps) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel()); + EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel(device->getNEODevice()->getRootDeviceEnvironment())); } GEN11TEST_F(L0GfxCoreHelperTestGen11, GivenGen11WhenCheckingL0HelperForCmdlistPrimaryBufferSupportThenReturnTrue) { diff --git a/level_zero/core/test/unit_tests/gen12lp/test_l0_gfx_core_helper_gen12lp.cpp b/level_zero/core/test/unit_tests/gen12lp/test_l0_gfx_core_helper_gen12lp.cpp index e6b83dba44..4a26138770 100644 --- a/level_zero/core/test/unit_tests/gen12lp/test_l0_gfx_core_helper_gen12lp.cpp +++ b/level_zero/core/test/unit_tests/gen12lp/test_l0_gfx_core_helper_gen12lp.cpp @@ -54,12 +54,12 @@ GEN12LPTEST_F(L0GfxCoreHelperTestGen12Lp, GivenGen12LpWhenCheckingL0HelperForPip GEN12LPTEST_F(L0GfxCoreHelperTestGen12Lp, GivenGen12LpWhenCheckingL0HelperForStateBaseAddressTrackingSupportThenReturnFalse) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_FALSE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking()); + EXPECT_FALSE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(device->getNEODevice()->getRootDeviceEnvironment())); } GEN12LPTEST_F(L0GfxCoreHelperTestGen12Lp, GivenGen12LpWhenGettingPlatformDefaultHeapAddressModelThenReturnPrivateHeaps) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel()); + EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel(device->getNEODevice()->getRootDeviceEnvironment())); } GEN12LPTEST_F(L0GfxCoreHelperTestGen12Lp, GivenGen12LpWhenCheckingL0HelperForCmdlistPrimaryBufferSupportThenReturnTrue) { diff --git a/level_zero/core/test/unit_tests/gen9/test_l0_gfx_core_helper_gen9.cpp b/level_zero/core/test/unit_tests/gen9/test_l0_gfx_core_helper_gen9.cpp index 49ddbb31d3..6274dca6e2 100644 --- a/level_zero/core/test/unit_tests/gen9/test_l0_gfx_core_helper_gen9.cpp +++ b/level_zero/core/test/unit_tests/gen9/test_l0_gfx_core_helper_gen9.cpp @@ -38,12 +38,12 @@ GEN9TEST_F(L0GfxCoreHelperTestGen9, GivenGen9WhenCheckingL0HelperForPipelineSele GEN9TEST_F(L0GfxCoreHelperTestGen9, GivenGen9WhenCheckingL0HelperForStateBaseAddressTrackingSupportThenReturnFalse) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_FALSE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking()); + EXPECT_FALSE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(device->getNEODevice()->getRootDeviceEnvironment())); } GEN9TEST_F(L0GfxCoreHelperTestGen9, GivenGen9WhenGettingPlatformDefaultHeapAddressModelThenReturnPrivateHeaps) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel()); + EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel(device->getNEODevice()->getRootDeviceEnvironment())); } GEN9TEST_F(L0GfxCoreHelperTestGen9, GivenGen9WhenCheckingL0HelperForCmdlistPrimaryBufferSupportThenReturnTrue) { 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 af80880435..d27463cc3d 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 @@ -2969,13 +2969,13 @@ TEST_F(CommandListCreate, givenCreatedCommandListWhenGettingTrackingFlagsThenDef bool expectedFrontEndTracking = l0GfxCoreHelper.platformSupportsFrontEndTracking(); EXPECT_EQ(expectedFrontEndTracking, commandList->frontEndStateTracking); - bool expectedStateBaseAddressTracking = l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(); + bool expectedStateBaseAddressTracking = l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(device->getNEODevice()->getRootDeviceEnvironment()); EXPECT_EQ(expectedStateBaseAddressTracking, commandList->getCmdListStateBaseAddressTracking()); bool expectedDoubleSbaWa = productHelper.isAdditionalStateBaseAddressWARequired(device->getHwInfo()); EXPECT_EQ(expectedDoubleSbaWa, commandList->doubleSbaWa); - auto expectedHeapAddressModel = l0GfxCoreHelper.getPlatformHeapAddressModel(); + auto expectedHeapAddressModel = l0GfxCoreHelper.getPlatformHeapAddressModel(device->getNEODevice()->getRootDeviceEnvironment()); EXPECT_EQ(expectedHeapAddressModel, commandList->getCmdListHeapAddressModel()); EXPECT_EQ(expectedHeapAddressModel, commandList->getCmdContainer().getHeapAddressModel()); diff --git a/level_zero/core/test/unit_tests/sources/cmdqueue/test_cmdqueue_1.cpp b/level_zero/core/test/unit_tests/sources/cmdqueue/test_cmdqueue_1.cpp index 8f4b2eee65..a808fdd9b8 100644 --- a/level_zero/core/test/unit_tests/sources/cmdqueue/test_cmdqueue_1.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdqueue/test_cmdqueue_1.cpp @@ -2079,13 +2079,13 @@ TEST_F(CommandQueueCreate, givenCreatedCommandQueueWhenGettingTrackingFlagsThenD bool expectedFrontEndTracking = l0GfxCoreHelper.platformSupportsFrontEndTracking(); EXPECT_EQ(expectedFrontEndTracking, commandQueue->frontEndStateTracking); - bool expectedStateBaseAddressTracking = l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(); + bool expectedStateBaseAddressTracking = l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(device->getNEODevice()->getRootDeviceEnvironment()); EXPECT_EQ(expectedStateBaseAddressTracking, commandQueue->stateBaseAddressTracking); bool expectedDoubleSbaWa = productHelper.isAdditionalStateBaseAddressWARequired(device->getHwInfo()); EXPECT_EQ(expectedDoubleSbaWa, commandQueue->doubleSbaWa); - auto expectedHeapAddressModel = l0GfxCoreHelper.getPlatformHeapAddressModel(); + auto expectedHeapAddressModel = l0GfxCoreHelper.getPlatformHeapAddressModel(device->getNEODevice()->getRootDeviceEnvironment()); EXPECT_EQ(expectedHeapAddressModel, commandQueue->cmdListHeapAddressModel); auto expectedDispatchCmdListBatchBufferAsPrimary = L0GfxCoreHelper::dispatchCmdListBatchBufferAsPrimary(rootDeviceEnvironment, true); diff --git a/level_zero/core/test/unit_tests/sources/helper/l0_gfx_core_helper_tests.cpp b/level_zero/core/test/unit_tests/sources/helper/l0_gfx_core_helper_tests.cpp index 0c98a898bd..33be4839c6 100644 --- a/level_zero/core/test/unit_tests/sources/helper/l0_gfx_core_helper_tests.cpp +++ b/level_zero/core/test/unit_tests/sources/helper/l0_gfx_core_helper_tests.cpp @@ -823,7 +823,7 @@ TEST_F(L0GfxCoreHelperTest, givenL0GfxCoreHelperWhenGettingDefaultHeapModelThenU auto &rootDeviceEnvironment = *executionEnvironment.rootDeviceEnvironments[0].get(); auto &l0GfxCoreHelper = rootDeviceEnvironment.getHelper(); - EXPECT_EQ(l0GfxCoreHelper.getPlatformHeapAddressModel(), L0GfxCoreHelper::getHeapAddressModel(rootDeviceEnvironment)); + EXPECT_EQ(l0GfxCoreHelper.getPlatformHeapAddressModel(rootDeviceEnvironment), L0GfxCoreHelper::getHeapAddressModel(rootDeviceEnvironment)); } TEST_F(L0GfxCoreHelperTest, givenL0GfxCoreHelperUsingOverrideDebugKeyWhenGettingDefaultHeapModelThenUseDebugKeySelectedModel) { diff --git a/level_zero/core/test/unit_tests/xe_hpc_core/test_l0_gfx_core_helper_xe_hpc_core.cpp b/level_zero/core/test/unit_tests/xe_hpc_core/test_l0_gfx_core_helper_xe_hpc_core.cpp index b67590652f..acb528be3b 100644 --- a/level_zero/core/test/unit_tests/xe_hpc_core/test_l0_gfx_core_helper_xe_hpc_core.cpp +++ b/level_zero/core/test/unit_tests/xe_hpc_core/test_l0_gfx_core_helper_xe_hpc_core.cpp @@ -50,12 +50,12 @@ XE_HPC_CORETEST_F(L0GfxCoreHelperTestXeHpc, GivenXeHpcWhenCheckingL0HelperForPip XE_HPC_CORETEST_F(L0GfxCoreHelperTestXeHpc, GivenXeHpcWhenCheckingL0HelperForStateBaseAddressTrackingSupportThenReturnTrue) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_TRUE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking()); + EXPECT_TRUE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(device->getNEODevice()->getRootDeviceEnvironment())); } XE_HPC_CORETEST_F(L0GfxCoreHelperTestXeHpc, GivenXeHpcWhenGettingPlatformDefaultHeapAddressModelThenReturnPrivateHeaps) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel()); + EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel(device->getNEODevice()->getRootDeviceEnvironment())); } XE_HPC_CORETEST_F(L0GfxCoreHelperTestXeHpc, GivenXeHpcWhenCheckingL0HelperForCmdlistPrimaryBufferSupportThenReturnTrue) { diff --git a/level_zero/core/test/unit_tests/xe_hpg_core/test_l0_gfx_core_helper_xe_hpg_core.cpp b/level_zero/core/test/unit_tests/xe_hpg_core/test_l0_gfx_core_helper_xe_hpg_core.cpp index 7384997cf7..51b7673e5f 100644 --- a/level_zero/core/test/unit_tests/xe_hpg_core/test_l0_gfx_core_helper_xe_hpg_core.cpp +++ b/level_zero/core/test/unit_tests/xe_hpg_core/test_l0_gfx_core_helper_xe_hpg_core.cpp @@ -57,12 +57,12 @@ XE_HPG_CORETEST_F(L0GfxCoreHelperTestXeHpg, GivenXeHpgWhenCheckingL0HelperForPip XE_HPG_CORETEST_F(L0GfxCoreHelperTestXeHpg, GivenXeHpgWhenCheckingL0HelperForStateBaseAddressTrackingSupportThenReturnFalse) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_FALSE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking()); + EXPECT_FALSE(l0GfxCoreHelper.platformSupportsStateBaseAddressTracking(device->getNEODevice()->getRootDeviceEnvironment())); } XE_HPG_CORETEST_F(L0GfxCoreHelperTestXeHpg, GivenXeHpgWhenGettingPlatformDefaultHeapAddressModelThenReturnPrivateHeaps) { auto &l0GfxCoreHelper = getHelper(); - EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel()); + EXPECT_EQ(NEO::HeapAddressModel::privateHeaps, l0GfxCoreHelper.getPlatformHeapAddressModel(device->getNEODevice()->getRootDeviceEnvironment())); } XE_HPG_CORETEST_F(L0GfxCoreHelperTestXeHpg, GivenXeHpgWhenCheckingL0HelperForCmdlistPrimaryBufferSupportThenReturnTrue) {