feature: Add releaseHelper for PVC

Related-To: NEO-8296

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
This commit is contained in:
Baj, Tomasz 2023-09-20 11:20:57 +00:00 committed by Compute-Runtime-Automation
parent a1a8d8fded
commit f62ace8929
8 changed files with 62 additions and 8 deletions

View File

@ -66,6 +66,7 @@ set(CLOC_LIB_SRCS_LIB
${NEO_SHARED_DIRECTORY}/release_helper/release_helper_1255.cpp
${NEO_SHARED_DIRECTORY}/release_helper/release_helper_1256.cpp
${NEO_SHARED_DIRECTORY}/release_helper/release_helper_1257.cpp
${NEO_SHARED_DIRECTORY}/release_helper/release_helper_1260.cpp
${NEO_SHARED_DIRECTORY}/release_helper/release_helper_1270.cpp
${NEO_SHARED_DIRECTORY}/release_helper/release_helper_1271.cpp
${NEO_SHARED_DIRECTORY}/release_helper${BRANCH_DIR_SUFFIX}enable_release_helper_xe.cpp

View File

@ -13,13 +13,14 @@ set(NEO_CORE_RELEASE_HELPER
${CMAKE_CURRENT_SOURCE_DIR}/release_helper.cpp
)
if(SUPPORT_XE_HPG_CORE)
if(SUPPORT_XE_HPG_CORE OR SUPPORT_XE_HPC_CORE)
list(APPEND NEO_CORE_RELEASE_HELPER
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_common_xe_lpg.inl
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_common_xe_hpg.inl
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_1255.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_1256.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_1257.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_1260.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_1270.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_1271.cpp
)

View File

@ -13,6 +13,7 @@ enum class ReleaseType {
release1255,
release1256,
release1257,
release1260,
release1270,
release1271,
};

View File

@ -18,6 +18,7 @@ EnableReleaseHelperArchitecture<12> enableReleaseHelperArchitecture12{releaseHel
EnableReleaseHelper<ReleaseType::release1255> enablerReleaseHelper1255{releaseHelperFactoryXe[55]};
EnableReleaseHelper<ReleaseType::release1256> enablerReleaseHelper1256{releaseHelperFactoryXe[56]};
EnableReleaseHelper<ReleaseType::release1257> enablerReleaseHelper1257{releaseHelperFactoryXe[57]};
EnableReleaseHelper<ReleaseType::release1260> enablerReleaseHelper1260{releaseHelperFactoryXe[60]};
EnableReleaseHelper<ReleaseType::release1270> enablerReleaseHelper1270{releaseHelperFactoryXe[70]};
EnableReleaseHelper<ReleaseType::release1271> enablerReleaseHelper1271{releaseHelperFactoryXe[71]};

View File

@ -0,0 +1,18 @@
/*
* Copyright (C) 2023 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "shared/source/release_helper/release_helper.h"
#include "shared/source/release_helper/release_helper_base.inl"
#include "release_definitions.h"
namespace NEO {
constexpr auto release = ReleaseType::release1260;
} // namespace NEO
template class NEO::ReleaseHelperHw<NEO::release>;

View File

@ -139,6 +139,7 @@ endif()
if(TESTS_XE_HPG_CORE OR TESTS_XE_HPC_CORE)
list(APPEND neo_libult_common_SRCS_LIB_ULT
${NEO_SHARED_TEST_DIRECTORY}/common/helpers/unit_test_helper_xe_hpg_and_xe_hpc.inl
${NEO_SHARED_DIRECTORY}/release_helper${BRANCH_DIR_SUFFIX}enable_release_helper_xe.cpp
)
endif()
@ -148,12 +149,6 @@ if(TESTS_PVC_AND_LATER)
)
endif()
if(TESTS_XE_HPG_CORE)
list(APPEND neo_libult_common_SRCS_LIB_ULT
${NEO_SHARED_DIRECTORY}/release_helper${BRANCH_DIR_SUFFIX}enable_release_helper_xe.cpp
)
endif()
set_property(GLOBAL PROPERTY neo_libult_common_SRCS_LIB_ULT ${neo_libult_common_SRCS_LIB_ULT})
set_property(GLOBAL PROPERTY neo_libult_common_SRCS_ENABLE_TESTED_HW ${neo_libult_common_SRCS_ENABLE_TESTED_HW})

View File

@ -9,11 +9,12 @@ target_sources(neo_shared_tests PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_tests_base.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_tests_base.h
)
if(TESTS_XE_HPG_CORE)
if(TESTS_XE_HPG_CORE OR TESTS_XE_HPC_CORE)
target_sources(neo_shared_tests PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_12_55_tests.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_12_56_tests.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_12_57_tests.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_12_60_tests.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_12_70_tests.cpp
${CMAKE_CURRENT_SOURCE_DIR}/release_helper_12_71_tests.cpp
)

View File

@ -0,0 +1,36 @@
/*
* Copyright (C) 2023 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "shared/source/release_helper/release_helper.h"
#include "shared/test/unit_test/release_helper/release_helper_tests_base.h"
#include "gtest/gtest.h"
struct ReleaseHelper1260Tests : public ReleaseHelperTests<12, 60> {
std::vector<uint32_t> getRevisions() override {
return {0, 1, 3, 5, 6, 7};
}
};
TEST_F(ReleaseHelper1260Tests, whenGettingCapabilitiesThenCorrectPropertiesAreReturned) {
for (auto &revision : getRevisions()) {
ipVersion.revision = revision;
releaseHelper = ReleaseHelper::create(ipVersion);
ASSERT_NE(nullptr, releaseHelper);
EXPECT_FALSE(releaseHelper->isAdjustWalkOrderAvailable());
EXPECT_TRUE(releaseHelper->isMatrixMultiplyAccumulateSupported());
EXPECT_FALSE(releaseHelper->isPipeControlPriorToNonPipelinedStateCommandsWARequired());
EXPECT_FALSE(releaseHelper->isProgramAllStateComputeCommandFieldsWARequired());
EXPECT_FALSE(releaseHelper->isPrefetchDisablingRequired());
EXPECT_FALSE(releaseHelper->isSplitMatrixMultiplyAccumulateSupported());
EXPECT_FALSE(releaseHelper->isBFloat16ConversionSupported());
EXPECT_TRUE(releaseHelper->isResolvingSubDeviceIDNeeded());
EXPECT_TRUE(releaseHelper->isCachingOnCpuAvailable());
}
}