diff --git a/level_zero/tools/source/sysman/temperature/linux/os_temperature_imp.cpp b/level_zero/tools/source/sysman/temperature/linux/os_temperature_imp.cpp index be0f5c70ba..ea24dc00cb 100644 --- a/level_zero/tools/source/sysman/temperature/linux/os_temperature_imp.cpp +++ b/level_zero/tools/source/sysman/temperature/linux/os_temperature_imp.cpp @@ -244,4 +244,4 @@ std::unique_ptr OsTemperature::create(OsSysman *pOsSysman, ze_boo return pLinuxTemperatureImp; } -} // namespace L0 \ No newline at end of file +} // namespace L0 diff --git a/level_zero/tools/source/sysman/temperature/windows/os_temperature_imp.cpp b/level_zero/tools/source/sysman/temperature/windows/os_temperature_imp.cpp index 06582694d0..71dd8c31aa 100644 --- a/level_zero/tools/source/sysman/temperature/windows/os_temperature_imp.cpp +++ b/level_zero/tools/source/sysman/temperature/windows/os_temperature_imp.cpp @@ -32,7 +32,7 @@ ze_result_t WddmTemperatureImp::getProperties(zes_temp_properties_t *pProperties request.paramInfo = KmdSysman::TemperatureDomainsType::TemperatureDomainDGPU; break; case ZES_TEMP_SENSORS_MEMORY: - request.paramInfo = KmdSysman::TemperatureDomainsType::TemperatureDomainPackage; + request.paramInfo = KmdSysman::TemperatureDomainsType::TemperatureDomainHBM; break; default: return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE; @@ -144,5 +144,4 @@ std::unique_ptr OsTemperature::create(OsSysman *pOsSysman, ze_boo pWddmTemperatureImp->setSensorType(sensorType); return std::move(pWddmTemperatureImp); } - -} // namespace L0 \ No newline at end of file +} // namespace L0 diff --git a/level_zero/tools/test/unit_tests/sources/sysman/temperature/windows/mock_temperature.h b/level_zero/tools/test/unit_tests/sources/sysman/temperature/windows/mock_temperature.h index 80d4c96c85..d94fea8f2c 100644 --- a/level_zero/tools/test/unit_tests/sources/sysman/temperature/windows/mock_temperature.h +++ b/level_zero/tools/test/unit_tests/sources/sysman/temperature/windows/mock_temperature.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2023 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -14,11 +14,12 @@ namespace L0 { namespace ult { +constexpr uint32_t temperatureHandleComponentCount = 3u; class TemperatureKmdSysManager : public Mock {}; template <> struct Mock : public TemperatureKmdSysManager { - + uint32_t mockTempDomainCount = temperatureHandleComponentCount; uint32_t mockTempGlobal = 26; uint32_t mockTempGPU = 25; uint32_t mockTempMemory = 23; @@ -38,6 +39,12 @@ struct Mock : public TemperatureKmdSysManager { } switch (pRequest->inRequestId) { + case KmdSysman::Requests::Temperature::NumTemperatureDomains: { + uint32_t *pValue = reinterpret_cast(pBuffer); + *pValue = mockTempDomainCount; + pResponse->outReturnCode = KmdSysman::KmdSysmanSuccess; + pResponse->outDataSize = sizeof(uint32_t); + } break; case KmdSysman::Requests::Temperature::TempCriticalEventSupported: case KmdSysman::Requests::Temperature::TempThreshold1EventSupported: case KmdSysman::Requests::Temperature::TempThreshold2EventSupported: { @@ -80,4 +87,4 @@ struct Mock : public TemperatureKmdSysManager { }; } // namespace ult -} // namespace L0 \ No newline at end of file +} // namespace L0 diff --git a/level_zero/tools/test/unit_tests/sources/sysman/temperature/windows/test_zes_temperature.cpp b/level_zero/tools/test/unit_tests/sources/sysman/temperature/windows/test_zes_temperature.cpp index 6406c4251f..846eb65fcd 100644 --- a/level_zero/tools/test/unit_tests/sources/sysman/temperature/windows/test_zes_temperature.cpp +++ b/level_zero/tools/test/unit_tests/sources/sysman/temperature/windows/test_zes_temperature.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020-2022 Intel Corporation + * Copyright (C) 2020-2023 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -14,11 +14,10 @@ extern bool sysmanUltsEnable; namespace L0 { namespace ult { -constexpr uint32_t temperatureHandleComponentCount = 3u; class SysmanDeviceTemperatureFixture : public SysmanDeviceFixture { protected: - Mock *pKmdSysManager = nullptr; + std::unique_ptr> pKmdSysManager = nullptr; KmdSysManager *pOriginalKmdSysManager = nullptr; std::vector deviceHandles; void SetUp() override { @@ -27,10 +26,11 @@ class SysmanDeviceTemperatureFixture : public SysmanDeviceFixture { } SysmanDeviceFixture::SetUp(); - pKmdSysManager = new Mock; + pKmdSysManager.reset(new Mock); + pKmdSysManager->allowSetCalls = true; pOriginalKmdSysManager = pWddmSysmanImp->pKmdSysManager; - pWddmSysmanImp->pKmdSysManager = pKmdSysManager; + pWddmSysmanImp->pKmdSysManager = pKmdSysManager.get(); for (auto handle : pSysmanDeviceImp->pTempHandleContext->handleList) { delete handle; @@ -46,18 +46,14 @@ class SysmanDeviceTemperatureFixture : public SysmanDeviceFixture { deviceHandles.resize(subDeviceCount, nullptr); Device::fromHandle(device->toHandle())->getSubDevices(&subDeviceCount, deviceHandles.data()); } - getTempHandles(0); } void TearDown() override { if (!sysmanUltsEnable) { GTEST_SKIP(); } - SysmanDeviceFixture::TearDown(); + pWddmSysmanImp->pKmdSysManager = pOriginalKmdSysManager; - if (pKmdSysManager != nullptr) { - delete pKmdSysManager; - pKmdSysManager = nullptr; - } + SysmanDeviceFixture::TearDown(); } std::vector getTempHandles(uint32_t count) { @@ -67,13 +63,13 @@ class SysmanDeviceTemperatureFixture : public SysmanDeviceFixture { } }; -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenComponentCountZeroWhenEnumeratingTemperatureSensorsThenValidCountIsReturnedAndVerifySysmanPowerGetCallSucceeds) { +TEST_F(SysmanDeviceTemperatureFixture, GivenComponentCountZeroWhenEnumeratingTemperatureSensorsThenValidCountIsReturnedAndVerifySysmanPowerGetCallSucceeds) { uint32_t count = 0; EXPECT_EQ(zesDeviceEnumTemperatureSensors(device->toHandle(), &count, nullptr), ZE_RESULT_SUCCESS); EXPECT_EQ(count, temperatureHandleComponentCount); } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenInvalidComponentCountWhenEnumeratingTemperatureSensorsThenValidCountIsReturnedAndVerifySysmanPowerGetCallSucceeds) { +TEST_F(SysmanDeviceTemperatureFixture, GivenInvalidComponentCountWhenEnumeratingTemperatureSensorsThenValidCountIsReturnedAndVerifySysmanPowerGetCallSucceeds) { uint32_t count = 0; EXPECT_EQ(zesDeviceEnumTemperatureSensors(device->toHandle(), &count, nullptr), ZE_RESULT_SUCCESS); EXPECT_EQ(count, temperatureHandleComponentCount); @@ -83,7 +79,7 @@ TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenInvalidComponentCountWhenEn EXPECT_EQ(count, temperatureHandleComponentCount); } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenComponentCountZeroWhenEnumeratingTemperatureSensorsThenValidPowerHandlesIsReturned) { +TEST_F(SysmanDeviceTemperatureFixture, GivenComponentCountZeroWhenEnumeratingTemperatureSensorsThenValidPowerHandlesIsReturned) { uint32_t count = 0; EXPECT_EQ(zesDeviceEnumTemperatureSensors(device->toHandle(), &count, nullptr), ZE_RESULT_SUCCESS); EXPECT_EQ(count, temperatureHandleComponentCount); @@ -95,7 +91,7 @@ TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenComponentCountZeroWhenEnume } } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidPowerHandleWhenGettingTemperaturePropertiesAllowSetToTrueThenCallSucceeds) { +TEST_F(SysmanDeviceTemperatureFixture, GivenValidPowerHandleWhenGettingTemperaturePropertiesAllowSetToTrueThenCallSucceeds) { auto handles = getTempHandles(temperatureHandleComponentCount); uint32_t sensorTypeIndex = 0; for (auto handle : handles) { @@ -114,35 +110,35 @@ TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidPowerHandleWhenGetting } } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidTempHandleWhenGettingMemoryTemperatureThenValidTemperatureReadingsRetrieved) { +TEST_F(SysmanDeviceTemperatureFixture, GivenValidTempHandleWhenGettingMemoryTemperatureThenValidTemperatureReadingsRetrieved) { auto handles = getTempHandles(temperatureHandleComponentCount); double temperature; ASSERT_EQ(ZE_RESULT_SUCCESS, zesTemperatureGetState(handles[ZES_TEMP_SENSORS_MEMORY], &temperature)); EXPECT_EQ(temperature, static_cast(pKmdSysManager->mockTempMemory)); } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidTempHandleWhenGettingGPUTemperatureThenValidTemperatureReadingsRetrieved) { +TEST_F(SysmanDeviceTemperatureFixture, GivenValidTempHandleWhenGettingGPUTemperatureThenValidTemperatureReadingsRetrieved) { auto handles = getTempHandles(temperatureHandleComponentCount); double temperature; ASSERT_EQ(ZE_RESULT_SUCCESS, zesTemperatureGetState(handles[ZES_TEMP_SENSORS_GPU], &temperature)); EXPECT_EQ(temperature, static_cast(pKmdSysManager->mockTempGPU)); } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidTempHandleWhenGettingGlobalTemperatureThenValidTemperatureReadingsRetrieved) { +TEST_F(SysmanDeviceTemperatureFixture, GivenValidTempHandleWhenGettingGlobalTemperatureThenValidTemperatureReadingsRetrieved) { auto handles = getTempHandles(temperatureHandleComponentCount); double temperature; ASSERT_EQ(ZE_RESULT_SUCCESS, zesTemperatureGetState(handles[ZES_TEMP_SENSORS_GLOBAL], &temperature)); EXPECT_EQ(temperature, static_cast(pKmdSysManager->mockTempGlobal)); } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidTempHandleWhenGettingUnsupportedSensorsTemperatureThenUnsupportedReturned) { +TEST_F(SysmanDeviceTemperatureFixture, GivenValidTempHandleWhenGettingUnsupportedSensorsTemperatureThenUnsupportedReturned) { auto pTemperatureImpMemory = std::make_unique(deviceHandles[0], pOsSysman, ZES_TEMP_SENSORS_GLOBAL_MIN); auto pWddmTemperatureImp = static_cast(pTemperatureImpMemory->pOsTemperature.get()); double pTemperature = 0; EXPECT_EQ(ZE_RESULT_ERROR_UNSUPPORTED_FEATURE, pWddmTemperatureImp->getSensorTemperature(&pTemperature)); } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidTempHandleWhenGettingTemperatureConfigThenUnsupportedIsReturned) { +TEST_F(SysmanDeviceTemperatureFixture, GivenValidTempHandleWhenGettingTemperatureConfigThenUnsupportedIsReturned) { auto handles = getTempHandles(temperatureHandleComponentCount); for (auto handle : handles) { zes_temp_config_t config = {}; @@ -150,7 +146,7 @@ TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidTempHandleWhenGettingT } } -TEST_F(SysmanDeviceTemperatureFixture, DISABLED_GivenValidTempHandleWhenSettingTemperatureConfigThenUnsupportedIsReturned) { +TEST_F(SysmanDeviceTemperatureFixture, GivenValidTempHandleWhenSettingTemperatureConfigThenUnsupportedIsReturned) { auto handles = getTempHandles(temperatureHandleComponentCount); for (auto handle : handles) { zes_temp_config_t config = {};