diff --git a/opencl/test/unit_test/fixtures/media_kernel_fixture.h b/opencl/test/unit_test/fixtures/media_kernel_fixture.h index 4f07d69f6c..1150a17af4 100644 --- a/opencl/test/unit_test/fixtures/media_kernel_fixture.h +++ b/opencl/test/unit_test/fixtures/media_kernel_fixture.h @@ -6,10 +6,11 @@ */ #pragma once +#include "shared/test/common/helpers/default_hw_info.h" + #include "opencl/test/unit_test/command_queue/enqueue_fixture.h" #include "opencl/test/unit_test/fixtures/hello_world_fixture.h" #include "opencl/test/unit_test/helpers/cl_hw_parse.h" -#include "opencl/test/unit_test/mocks/mock_platform.h" namespace NEO { @@ -57,7 +58,7 @@ struct MediaKernelFixture : public HelloWorldFixture, } void SetUp() override { - skipVmeTest = !platform()->peekExecutionEnvironment()->rootDeviceEnvironments[0]->getHardwareInfo()->capabilityTable.supportsVme; + skipVmeTest = !defaultHwInfo->capabilityTable.supportsVme; if (skipVmeTest) { GTEST_SKIP(); } diff --git a/opencl/test/unit_test/gen8/CMakeLists.txt b/opencl/test/unit_test/gen8/CMakeLists.txt index 393fb6b9a4..70e205da16 100644 --- a/opencl/test/unit_test/gen8/CMakeLists.txt +++ b/opencl/test/unit_test/gen8/CMakeLists.txt @@ -7,17 +7,14 @@ if(TESTS_GEN8) set(IGDRCL_SRCS_tests_gen8 ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt - ${CMAKE_CURRENT_SOURCE_DIR}/coherency_tests_gen8.cpp ${CMAKE_CURRENT_SOURCE_DIR}/command_stream_receiver_hw_tests_gen8.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/cl_hw_helper_tests_gen8.cpp ${CMAKE_CURRENT_SOURCE_DIR}/enqueue_media_kernel_gen8.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/hw_helper_tests_gen8.cpp ${CMAKE_CURRENT_SOURCE_DIR}/image_tests_gen8.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kernel_tests_gen8.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/sampler_tests_gen8.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/test_device_caps_gen8.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_cl_device_caps_gen8.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_platform_caps_gen8.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_preemption_gen8.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/test_sample_gen8.cpp ) get_property(NEO_CORE_TESTS_GEN8 GLOBAL PROPERTY NEO_CORE_TESTS_GEN8) diff --git a/opencl/test/unit_test/gen8/bdw/CMakeLists.txt b/opencl/test/unit_test/gen8/bdw/CMakeLists.txt index ba8f8a2375..28fcafffbb 100644 --- a/opencl/test/unit_test/gen8/bdw/CMakeLists.txt +++ b/opencl/test/unit_test/gen8/bdw/CMakeLists.txt @@ -1,16 +1,10 @@ # -# Copyright (C) 2018-2020 Intel Corporation +# Copyright (C) 2018-2021 Intel Corporation # # SPDX-License-Identifier: MIT # if(TESTS_BDW) - set(IGDRCL_SRCS_tests_gen8_bdw - ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt - ${CMAKE_CURRENT_SOURCE_DIR}/test_device_caps_bdw.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/test_hw_info_config_bdw.cpp - ) - target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen8_bdw}) add_subdirectories() neo_copy_test_files_with_revision(copy_test_files_bdw_0 bdw 0) add_dependencies(copy_test_files_per_product copy_test_files_bdw_0) diff --git a/opencl/test/unit_test/gen8/bdw/test_device_caps_bdw.cpp b/opencl/test/unit_test/gen8/bdw/test_device_caps_bdw.cpp deleted file mode 100644 index 75a32522d6..0000000000 --- a/opencl/test/unit_test/gen8/bdw/test_device_caps_bdw.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (C) 2018-2021 Intel Corporation - * - * SPDX-License-Identifier: MIT - * - */ - -#include "shared/source/helpers/hw_helper.h" -#include "shared/test/common/test_macros/test.h" - -#include "opencl/test/unit_test/fixtures/cl_device_fixture.h" - -using namespace NEO; - -typedef Test BdwDeviceCaps; - -BDWTEST_F(BdwDeviceCaps, WhenCheckingExtensionStringThenFp64IsSupported) { - const auto &caps = pClDevice->getDeviceInfo(); - std::string extensionString = caps.deviceExtensions; - - EXPECT_NE(std::string::npos, extensionString.find(std::string("cl_khr_fp64"))); - EXPECT_NE(0u, caps.doubleFpConfig); -} - -BDWTEST_F(BdwDeviceCaps, WhenGettingDeviceInfoThenCorrectlyRoundedDivideSqrtIsEnabled) { - const auto &caps = pClDevice->getDeviceInfo(); - EXPECT_NE(0u, caps.singleFpConfig & CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT); -} - -BDWTEST_F(BdwDeviceCaps, GivenDefaultWhenCheckingPreemptionModeThenDisabledIsReported) { - EXPECT_TRUE(PreemptionMode::Disabled == pDevice->getHardwareInfo().capabilityTable.defaultPreemptionMode); -} - -BDWTEST_F(BdwDeviceCaps, BdwProfilingTimerResolution) { - const auto &caps = pDevice->getDeviceInfo(); - EXPECT_EQ(80u, caps.outProfilingTimerResolution); -} - -BDWTEST_F(BdwDeviceCaps, givenHwInfoWhenRequestedComputeUnitsUsedForScratchThenReturnValidValue) { - const auto &hwInfo = pDevice->getHardwareInfo(); - auto &hwHelper = HwHelper::get(hwInfo.platform.eRenderCoreFamily); - - uint32_t expectedValue = hwInfo.gtSystemInfo.MaxSubSlicesSupported * hwInfo.gtSystemInfo.MaxEuPerSubSlice * - hwInfo.gtSystemInfo.ThreadCount / hwInfo.gtSystemInfo.EUCount; - - EXPECT_EQ(expectedValue, hwHelper.getComputeUnitsUsedForScratch(&hwInfo)); - EXPECT_EQ(expectedValue, pDevice->getDeviceInfo().computeUnitsUsedForScratch); -} - -BDWTEST_F(BdwDeviceCaps, givenHwInfoWhenRequestedMaxFrontEndThreadsThenReturnValidValue) { - const auto &hwInfo = pDevice->getHardwareInfo(); - - EXPECT_EQ(HwHelper::getMaxThreadsForVfe(hwInfo), pDevice->getDeviceInfo().maxFrontEndThreads); -} - -typedef Test BdwUsDeviceIdTest; - -BDWTEST_F(BdwUsDeviceIdTest, WhenCheckingIsSimulationThenTrueReturnedOnlyForSimulationId) { - unsigned short bdwSimulationIds[6] = { - 0x0BD0, - 0x0BD1, - 0x0BD2, - 0x0BD3, - 0x0BD4, - 0, // default, non-simulation - }; - NEO::MockDevice *mockDevice = nullptr; - - for (auto id : bdwSimulationIds) { - mockDevice = createWithUsDeviceId(id); - ASSERT_NE(mockDevice, nullptr); - - if (id == 0) - EXPECT_FALSE(mockDevice->isSimulation()); - else - EXPECT_TRUE(mockDevice->isSimulation()); - delete mockDevice; - } -} - -BDWTEST_F(BdwUsDeviceIdTest, GivenBdwWhenCheckftr64KBpagesThenFalse) { - EXPECT_FALSE(pDevice->getHardwareInfo().capabilityTable.ftr64KBpages); -} diff --git a/opencl/test/unit_test/gen8/bdw/windows/CMakeLists.txt b/opencl/test/unit_test/gen8/bdw/windows/CMakeLists.txt deleted file mode 100644 index 11734b0136..0000000000 --- a/opencl/test/unit_test/gen8/bdw/windows/CMakeLists.txt +++ /dev/null @@ -1,14 +0,0 @@ -# -# Copyright (C) 2018-2020 Intel Corporation -# -# SPDX-License-Identifier: MIT -# - -set(IGDRCL_SRCS_tests_gen8_bdw_windows - ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt - ${CMAKE_CURRENT_SOURCE_DIR}/test_device_caps_bdw_windows.cpp -) - -if(WIN32) - target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen8_bdw_windows}) -endif() diff --git a/opencl/test/unit_test/gen8/bdw/windows/test_device_caps_bdw_windows.cpp b/opencl/test/unit_test/gen8/bdw/windows/test_device_caps_bdw_windows.cpp deleted file mode 100644 index fefcef394d..0000000000 --- a/opencl/test/unit_test/gen8/bdw/windows/test_device_caps_bdw_windows.cpp +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (C) 2018-2021 Intel Corporation - * - * SPDX-License-Identifier: MIT - * - */ - -#include "shared/source/helpers/hw_helper.h" -#include "shared/test/common/test_macros/test.h" - -#include "opencl/test/unit_test/fixtures/cl_device_fixture.h" - -using namespace NEO; - -typedef Test BdwDeviceCaps; - -BDWTEST_F(BdwDeviceCaps, WhenCheckingKmdNotifyPropertiesThenKmdNotifyIsEnabledCorrectly) { - EXPECT_TRUE(pDevice->getHardwareInfo().capabilityTable.kmdNotifyProperties.enableKmdNotify); - EXPECT_EQ(50000, pDevice->getHardwareInfo().capabilityTable.kmdNotifyProperties.delayKmdNotifyMicroseconds); - EXPECT_TRUE(pDevice->getHardwareInfo().capabilityTable.kmdNotifyProperties.enableQuickKmdSleep); - EXPECT_EQ(5000, pDevice->getHardwareInfo().capabilityTable.kmdNotifyProperties.delayQuickKmdSleepMicroseconds); - EXPECT_TRUE(pDevice->getHardwareInfo().capabilityTable.kmdNotifyProperties.enableQuickKmdSleepForSporadicWaits); - EXPECT_EQ(200000, pDevice->getHardwareInfo().capabilityTable.kmdNotifyProperties.delayQuickKmdSleepForSporadicWaitsMicroseconds); - EXPECT_FALSE(pDevice->getHardwareInfo().capabilityTable.kmdNotifyProperties.enableQuickKmdSleepForDirectSubmission); - EXPECT_EQ(0, pDevice->getHardwareInfo().capabilityTable.kmdNotifyProperties.delayQuickKmdSleepForDirectSubmissionMicroseconds); -} diff --git a/opencl/test/unit_test/gen8/cl_hw_helper_tests_gen8.cpp b/opencl/test/unit_test/gen8/cl_hw_helper_tests_gen8.cpp new file mode 100644 index 0000000000..08859068a9 --- /dev/null +++ b/opencl/test/unit_test/gen8/cl_hw_helper_tests_gen8.cpp @@ -0,0 +1,23 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#include "shared/test/common/helpers/default_hw_info.h" +#include "shared/test/common/test_macros/test.h" + +#include "opencl/source/helpers/cl_hw_helper.h" +#include "opencl/test/unit_test/mocks/mock_cl_hw_helper.h" + +using namespace NEO; +using ClHwHelperTestGen8 = ::testing::Test; + +GEN8TEST_F(ClHwHelperTestGen8, WhenGettingDeviceIpVersionThenMakeCorrectDeviceIpVersion) { + EXPECT_EQ(ClHwHelperMock::makeDeviceIpVersion(8, 0, 0), ClHwHelper::get(renderCoreFamily).getDeviceIpVersion(*defaultHwInfo)); +} + +GEN8TEST_F(ClHwHelperTestGen8, WhenGettingSupportedDeviceFeatureCapabilitiesThenReturnCorrectValue) { + EXPECT_EQ(0u, ClHwHelper::get(renderCoreFamily).getSupportedDeviceFeatureCapabilities()); +} diff --git a/opencl/test/unit_test/gen8/test_cl_device_caps_gen8.cpp b/opencl/test/unit_test/gen8/test_cl_device_caps_gen8.cpp new file mode 100644 index 0000000000..98740a74ce --- /dev/null +++ b/opencl/test/unit_test/gen8/test_cl_device_caps_gen8.cpp @@ -0,0 +1,52 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#include "shared/test/common/test_macros/test.h" + +#include "opencl/test/unit_test/fixtures/cl_device_fixture.h" + +using namespace NEO; + +using Gen8ClDeviceCaps = Test; + +GEN8TEST_F(Gen8ClDeviceCaps, WhenCheckingExtensionStringThenFp64IsSupported) { + const auto &caps = pClDevice->getDeviceInfo(); + std::string extensionString = caps.deviceExtensions; + + EXPECT_NE(std::string::npos, extensionString.find(std::string("cl_khr_fp64"))); + EXPECT_NE(0u, caps.doubleFpConfig); +} + +GEN8TEST_F(Gen8ClDeviceCaps, WhenGettingDeviceInfoThenCorrectlyRoundedDivideSqrtIsEnabled) { + const auto &caps = pClDevice->getDeviceInfo(); + EXPECT_NE(0u, caps.singleFpConfig & CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT); +} + +GEN8TEST_F(Gen8ClDeviceCaps, givenGen8WhenCheckExtensionsThenDeviceProperlyReportsClKhrSubgroupsExtension) { + const auto &caps = pClDevice->getDeviceInfo(); + if (pClDevice->areOcl21FeaturesEnabled()) { + EXPECT_THAT(caps.deviceExtensions, testing::HasSubstr(std::string("cl_khr_subgroups"))); + } else { + EXPECT_THAT(caps.deviceExtensions, ::testing::Not(testing::HasSubstr(std::string("cl_khr_subgroups")))); + } +} + +GEN8TEST_F(Gen8ClDeviceCaps, givenGen8WhenCheckingCapsThenDeviceDoesProperlyReportsIndependentForwardProgress) { + const auto &caps = pClDevice->getDeviceInfo(); + + if (pClDevice->areOcl21FeaturesEnabled()) { + EXPECT_TRUE(caps.independentForwardProgress != 0); + } else { + EXPECT_FALSE(caps.independentForwardProgress != 0); + } +} + +GEN8TEST_F(Gen8ClDeviceCaps, WhenCheckingImage3dDimensionsThenCapsAreSetCorrectly) { + const auto &caps = pClDevice->getDeviceInfo(); + EXPECT_EQ(2048u, caps.image3DMaxWidth); + EXPECT_EQ(2048u, caps.image3DMaxHeight); +} diff --git a/opencl/test/unit_test/gen8/test_platform_caps_gen8.cpp b/opencl/test/unit_test/gen8/test_platform_caps_gen8.cpp index 4e8554123a..44f181bd99 100644 --- a/opencl/test/unit_test/gen8/test_platform_caps_gen8.cpp +++ b/opencl/test/unit_test/gen8/test_platform_caps_gen8.cpp @@ -11,17 +11,9 @@ using namespace NEO; -struct Gen8PlatformCaps : public PlatformFixture, public ::testing::Test { - void SetUp() override { - PlatformFixture::SetUp(); - } +using Gen8PlatformCaps = Test; - void TearDown() override { - PlatformFixture::TearDown(); - } -}; - -BDWTEST_F(Gen8PlatformCaps, WhenCheckingExtensionStringThenFp64IsSupported) { +GEN8TEST_F(Gen8PlatformCaps, WhenCheckingExtensionStringThenFp64IsSupported) { const auto &caps = pPlatform->getPlatformInfo(); EXPECT_NE(std::string::npos, caps.extensions.find(std::string("cl_khr_fp64"))); diff --git a/opencl/test/unit_test/gen8/windows/CMakeLists.txt b/opencl/test/unit_test/gen8/windows/CMakeLists.txt deleted file mode 100644 index b7f9b5e371..0000000000 --- a/opencl/test/unit_test/gen8/windows/CMakeLists.txt +++ /dev/null @@ -1,13 +0,0 @@ -# -# Copyright (C) 2018-2020 Intel Corporation -# -# SPDX-License-Identifier: MIT -# - -set(IGDRCL_SRCS_tests_gen8_windows - ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt - ${CMAKE_CURRENT_SOURCE_DIR}/gmm_callbacks_tests_gen8.cpp -) -if(WIN32) - target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen8_windows}) -endif() diff --git a/shared/test/unit_test/gen8/CMakeLists.txt b/shared/test/unit_test/gen8/CMakeLists.txt index 4d1a465488..cdfff1d952 100644 --- a/shared/test/unit_test/gen8/CMakeLists.txt +++ b/shared/test/unit_test/gen8/CMakeLists.txt @@ -5,5 +5,13 @@ # if(TESTS_GEN8) + target_sources(neo_shared_tests PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt + ${CMAKE_CURRENT_SOURCE_DIR}/coherency_tests_gen8.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/hw_helper_tests_gen8.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/sampler_tests_gen8.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_device_caps_gen8.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_sample_gen8.cpp + ) add_subdirectories() endif() diff --git a/shared/test/unit_test/gen8/bdw/CMakeLists.txt b/shared/test/unit_test/gen8/bdw/CMakeLists.txt new file mode 100644 index 0000000000..63b76d0f3b --- /dev/null +++ b/shared/test/unit_test/gen8/bdw/CMakeLists.txt @@ -0,0 +1,14 @@ +# +# Copyright (C) 2021 Intel Corporation +# +# SPDX-License-Identifier: MIT +# + +if(TESTS_BDW) + target_sources(neo_shared_tests PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt + ${CMAKE_CURRENT_SOURCE_DIR}/test_device_caps_bdw.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_hw_info_config_bdw.cpp + ) + add_subdirectories() +endif() diff --git a/shared/test/unit_test/gen8/bdw/test_device_caps_bdw.cpp b/shared/test/unit_test/gen8/bdw/test_device_caps_bdw.cpp new file mode 100644 index 0000000000..d254d8ac25 --- /dev/null +++ b/shared/test/unit_test/gen8/bdw/test_device_caps_bdw.cpp @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2018-2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#include "shared/test/common/mocks/mock_device.h" +#include "shared/test/common/test_macros/test.h" + +using namespace NEO; +using BdwUsDeviceIdTest = ::testing::Test; + +BDWTEST_F(BdwUsDeviceIdTest, WhenCheckingIsSimulationThenTrueReturnedOnlyForSimulationId) { + unsigned short bdwSimulationIds[6] = { + 0x0BD0, + 0x0BD1, + 0x0BD2, + 0x0BD3, + 0x0BD4, + 0, // default, non-simulation + }; + + for (auto &id : bdwSimulationIds) { + auto hardwareInfo = *defaultHwInfo; + hardwareInfo.platform.usDeviceID = id; + std::unique_ptr mockDevice(MockDevice::createWithNewExecutionEnvironment(&hardwareInfo, 0u /*rootDeviceIndex*/)); + ASSERT_NE(mockDevice.get(), nullptr); + + if (id == 0) + EXPECT_FALSE(mockDevice->isSimulation()); + else + EXPECT_TRUE(mockDevice->isSimulation()); + } +} diff --git a/opencl/test/unit_test/gen8/bdw/test_hw_info_config_bdw.cpp b/shared/test/unit_test/gen8/bdw/test_hw_info_config_bdw.cpp similarity index 100% rename from opencl/test/unit_test/gen8/bdw/test_hw_info_config_bdw.cpp rename to shared/test/unit_test/gen8/bdw/test_hw_info_config_bdw.cpp diff --git a/opencl/test/unit_test/gen8/coherency_tests_gen8.cpp b/shared/test/unit_test/gen8/coherency_tests_gen8.cpp similarity index 82% rename from opencl/test/unit_test/gen8/coherency_tests_gen8.cpp rename to shared/test/unit_test/gen8/coherency_tests_gen8.cpp index 4b124fced1..2e6b8abbd0 100644 --- a/opencl/test/unit_test/gen8/coherency_tests_gen8.cpp +++ b/shared/test/unit_test/gen8/coherency_tests_gen8.cpp @@ -9,17 +9,15 @@ #include "shared/source/execution_environment/execution_environment.h" #include "shared/test/common/helpers/default_hw_info.h" #include "shared/test/common/helpers/dispatch_flags_helper.h" +#include "shared/test/common/mocks/mock_execution_environment.h" #include "shared/test/common/test_macros/test.h" -#include "opencl/source/platform/platform.h" -#include "opencl/test/unit_test/mocks/mock_platform.h" - using namespace NEO; -typedef ::testing::Test Gen8CoherencyRequirements; +using Gen8CoherencyRequirements = ::testing::Test; GEN8TEST_F(Gen8CoherencyRequirements, WhenMemoryManagerIsInitializedThenNoCoherencyProgramming) { - ExecutionEnvironment *executionEnvironment = platform()->peekExecutionEnvironment(); + auto executionEnvironment = std::make_unique(); executionEnvironment->initializeMemoryManager(); CommandStreamReceiverHw csr(*executionEnvironment, 0, 1); LinearStream stream; diff --git a/opencl/test/unit_test/gen8/hw_helper_tests_gen8.cpp b/shared/test/unit_test/gen8/hw_helper_tests_gen8.cpp similarity index 76% rename from opencl/test/unit_test/gen8/hw_helper_tests_gen8.cpp rename to shared/test/unit_test/gen8/hw_helper_tests_gen8.cpp index a26bd5b10d..fcfbcd6d5e 100644 --- a/opencl/test/unit_test/gen8/hw_helper_tests_gen8.cpp +++ b/shared/test/unit_test/gen8/hw_helper_tests_gen8.cpp @@ -10,10 +10,6 @@ #include "shared/test/common/helpers/hw_helper_tests.h" #include "shared/test/unit_test/helpers/get_gpgpu_engines_tests.inl" -#include "opencl/source/helpers/cl_hw_helper.h" -#include "opencl/source/helpers/hardware_commands_helper.h" -#include "opencl/test/unit_test/mocks/mock_cl_hw_helper.h" - using HwHelperTestGen8 = HwHelperTest; GEN8TEST_F(HwHelperTestGen8, WhenGettingMaxBarriersPerSliceThenCorrectSizeIsReturned) { @@ -39,14 +35,6 @@ GEN8TEST_F(HwHelperTestGen8, whenGetGpgpuEnginesThenReturnThreeEngines) { EXPECT_EQ(3u, pDevice->allEngines.size()); } -GEN8TEST_F(HwHelperTestGen8, WhenGettingDeviceIpVersionThenMakeCorrectDeviceIpVersion) { - EXPECT_EQ(ClHwHelperMock::makeDeviceIpVersion(8, 0, 0), ClHwHelper::get(renderCoreFamily).getDeviceIpVersion(*defaultHwInfo)); -} - -GEN8TEST_F(HwHelperTestGen8, WhenGettingSupportedDeviceFeatureCapabilitiesThenReturnCorrectValue) { - EXPECT_EQ(0u, ClHwHelper::get(renderCoreFamily).getSupportedDeviceFeatureCapabilities()); -} - using MemorySynchronizatiopCommandsTestsGen8 = ::testing::Test; GEN8TEST_F(MemorySynchronizatiopCommandsTestsGen8, WhenProgrammingCacheFlushThenExpectConstantCacheFieldSet) { using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL; diff --git a/opencl/test/unit_test/gen8/sampler_tests_gen8.cpp b/shared/test/unit_test/gen8/sampler_tests_gen8.cpp similarity index 88% rename from opencl/test/unit_test/gen8/sampler_tests_gen8.cpp rename to shared/test/unit_test/gen8/sampler_tests_gen8.cpp index d57374095e..ee6bf24926 100644 --- a/opencl/test/unit_test/gen8/sampler_tests_gen8.cpp +++ b/shared/test/unit_test/gen8/sampler_tests_gen8.cpp @@ -6,15 +6,14 @@ */ #include "shared/source/os_interface/hw_info_config.h" +#include "shared/test/common/helpers/default_hw_info.h" #include "shared/test/common/test_macros/test.h" -#include "opencl/test/unit_test/fixtures/cl_device_fixture.h" - #include using namespace NEO; -typedef Test Gen8SamplerTest; +using Gen8SamplerTest = ::testing::Test; GEN8TEST_F(Gen8SamplerTest, WhenAppendingSamplerStateParamsThenStateIsNotChanged) { typedef typename FamilyType::SAMPLER_STATE SAMPLER_STATE; diff --git a/opencl/test/unit_test/gen8/test_device_caps_gen8.cpp b/shared/test/unit_test/gen8/test_device_caps_gen8.cpp similarity index 68% rename from opencl/test/unit_test/gen8/test_device_caps_gen8.cpp rename to shared/test/unit_test/gen8/test_device_caps_gen8.cpp index 683b103009..2b68e4718a 100644 --- a/opencl/test/unit_test/gen8/test_device_caps_gen8.cpp +++ b/shared/test/unit_test/gen8/test_device_caps_gen8.cpp @@ -6,35 +6,45 @@ */ #include "shared/source/helpers/hw_helper.h" +#include "shared/test/common/fixtures/device_fixture.h" #include "shared/test/common/test_macros/test.h" -#include "opencl/test/unit_test/fixtures/cl_device_fixture.h" - using namespace NEO; -typedef Test Gen8DeviceCaps; +using Gen8DeviceCaps = Test; -GEN8TEST_F(Gen8DeviceCaps, GivenDefaultSettingsWhenCheckingPreemptionModeThenPreemptionIsDisabled) { +GEN8TEST_F(Gen8DeviceCaps, GivenDefaultWhenCheckingPreemptionModeThenDisabledIsReported) { EXPECT_TRUE(PreemptionMode::Disabled == pDevice->getHardwareInfo().capabilityTable.defaultPreemptionMode); } -GEN8TEST_F(Gen8DeviceCaps, givenGen8WhenCheckExtensionsThenDeviceProperlyReportsClKhrSubgroupsExtension) { - const auto &caps = pClDevice->getDeviceInfo(); - if (pClDevice->areOcl21FeaturesEnabled()) { - EXPECT_THAT(caps.deviceExtensions, testing::HasSubstr(std::string("cl_khr_subgroups"))); - } else { - EXPECT_THAT(caps.deviceExtensions, ::testing::Not(testing::HasSubstr(std::string("cl_khr_subgroups")))); - } +GEN8TEST_F(Gen8DeviceCaps, BdwProfilingTimerResolution) { + const auto &caps = pDevice->getDeviceInfo(); + EXPECT_EQ(80u, caps.outProfilingTimerResolution); } -GEN8TEST_F(Gen8DeviceCaps, givenGen8WhenCheckingCapsThenDeviceDoesProperlyReportsIndependentForwardProgress) { - const auto &caps = pClDevice->getDeviceInfo(); +GEN8TEST_F(Gen8DeviceCaps, givenHwInfoWhenRequestedComputeUnitsUsedForScratchThenReturnValidValue) { + const auto &hwInfo = pDevice->getHardwareInfo(); + auto &hwHelper = HwHelper::get(hwInfo.platform.eRenderCoreFamily); - if (pClDevice->areOcl21FeaturesEnabled()) { - EXPECT_TRUE(caps.independentForwardProgress != 0); - } else { - EXPECT_FALSE(caps.independentForwardProgress != 0); - } + uint32_t expectedValue = hwInfo.gtSystemInfo.MaxSubSlicesSupported * hwInfo.gtSystemInfo.MaxEuPerSubSlice * + hwInfo.gtSystemInfo.ThreadCount / hwInfo.gtSystemInfo.EUCount; + + EXPECT_EQ(expectedValue, hwHelper.getComputeUnitsUsedForScratch(&hwInfo)); + EXPECT_EQ(expectedValue, pDevice->getDeviceInfo().computeUnitsUsedForScratch); +} + +GEN8TEST_F(Gen8DeviceCaps, givenHwInfoWhenRequestedMaxFrontEndThreadsThenReturnValidValue) { + const auto &hwInfo = pDevice->getHardwareInfo(); + + EXPECT_EQ(HwHelper::getMaxThreadsForVfe(hwInfo), pDevice->getDeviceInfo().maxFrontEndThreads); +} + +GEN8TEST_F(Gen8DeviceCaps, GivenBdwWhenCheckftr64KBpagesThenFalse) { + EXPECT_FALSE(defaultHwInfo->capabilityTable.ftr64KBpages); +} + +GEN8TEST_F(Gen8DeviceCaps, GivenDefaultSettingsWhenCheckingPreemptionModeThenPreemptionIsDisabled) { + EXPECT_TRUE(PreemptionMode::Disabled == pDevice->getHardwareInfo().capabilityTable.defaultPreemptionMode); } GEN8TEST_F(Gen8DeviceCaps, WhenCheckingKmdNotifyMechanismThenPropertiesAreSetCorrectly) { @@ -54,11 +64,8 @@ GEN8TEST_F(Gen8DeviceCaps, WhenCheckingCompressionThenItIsDisabled) { } GEN8TEST_F(Gen8DeviceCaps, WhenCheckingImage3dDimensionsThenCapsAreSetCorrectly) { - const auto &caps = pClDevice->getDeviceInfo(); const auto &sharedCaps = pDevice->getDeviceInfo(); - EXPECT_EQ(2048u, caps.image3DMaxWidth); EXPECT_EQ(2048u, sharedCaps.image3DMaxDepth); - EXPECT_EQ(2048u, caps.image3DMaxHeight); } GEN8TEST_F(Gen8DeviceCaps, givenHwInfoWhenSlmSizeIsRequiredThenReturnCorrectValue) { @@ -86,4 +93,4 @@ GEN8TEST_F(Gen8DeviceCaps, givenGen8WhenCheckingMediaBlockSupportThenReturnTrue) } GEN8TEST_F(Gen8DeviceCaps, givenGen8WhenCheckingDeviceEnqueueSupportThenReturnFalse) { EXPECT_FALSE(pDevice->getHardwareInfo().capabilityTable.supportsDeviceEnqueue); -} \ No newline at end of file +} diff --git a/opencl/test/unit_test/gen8/test_sample_gen8.cpp b/shared/test/unit_test/gen8/test_sample_gen8.cpp similarity index 52% rename from opencl/test/unit_test/gen8/test_sample_gen8.cpp rename to shared/test/unit_test/gen8/test_sample_gen8.cpp index 0e9d281eb7..1691cfad25 100644 --- a/opencl/test/unit_test/gen8/test_sample_gen8.cpp +++ b/shared/test/unit_test/gen8/test_sample_gen8.cpp @@ -5,20 +5,19 @@ * */ +#include "shared/test/common/helpers/default_hw_info.h" #include "shared/test/common/test_macros/test.h" -#include "opencl/test/unit_test/fixtures/cl_device_fixture.h" - using namespace NEO; -typedef Test BroadwellOnlyTest; +using BroadwellOnlyTest = ::testing::Test; BDWTEST_F(BroadwellOnlyTest, WhenGettingProductFamilyThenBroadwellIsReturned) { - EXPECT_EQ(IGFX_BROADWELL, pDevice->getHardwareInfo().platform.eProductFamily); + EXPECT_EQ(IGFX_BROADWELL, defaultHwInfo->platform.eProductFamily); } -typedef Test Gen8OnlyTest; +using Gen8OnlyTest = ::testing::Test; GEN8TEST_F(Gen8OnlyTest, WhenGettingRenderCoreFamilyThenGen8CoreIsReturned) { - EXPECT_EQ(IGFX_GEN8_CORE, pDevice->getRenderCoreFamily()); + EXPECT_EQ(IGFX_GEN8_CORE, defaultHwInfo->platform.eRenderCoreFamily); } diff --git a/shared/test/unit_test/gen8/windows/CMakeLists.txt b/shared/test/unit_test/gen8/windows/CMakeLists.txt new file mode 100644 index 0000000000..f35bfa5ee6 --- /dev/null +++ b/shared/test/unit_test/gen8/windows/CMakeLists.txt @@ -0,0 +1,12 @@ +# +# Copyright (C) 2021 Intel Corporation +# +# SPDX-License-Identifier: MIT +# + +if(WIN32) + target_sources(neo_shared_tests PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt + ${CMAKE_CURRENT_SOURCE_DIR}/gmm_callbacks_tests_gen8.cpp + ) +endif() diff --git a/opencl/test/unit_test/gen8/windows/gmm_callbacks_tests_gen8.cpp b/shared/test/unit_test/gen8/windows/gmm_callbacks_tests_gen8.cpp similarity index 92% rename from opencl/test/unit_test/gen8/windows/gmm_callbacks_tests_gen8.cpp rename to shared/test/unit_test/gen8/windows/gmm_callbacks_tests_gen8.cpp index 6544380e57..a375e19aeb 100644 --- a/opencl/test/unit_test/gen8/windows/gmm_callbacks_tests_gen8.cpp +++ b/shared/test/unit_test/gen8/windows/gmm_callbacks_tests_gen8.cpp @@ -10,7 +10,7 @@ using namespace NEO; -typedef ::testing::Test Gen8GmmCallbacksTests; +using Gen8GmmCallbacksTests = ::testing::Test; GEN8TEST_F(Gen8GmmCallbacksTests, GivenDefaultWhenNotifyingAubCaptureThenDeviceCallbackIsNotSupported) { EXPECT_EQ(0, DeviceCallbacks::notifyAubCapture(nullptr, 0, 0, false));