mirror of
https://github.com/intel/compute-runtime.git
synced 2025-09-15 13:01:45 +08:00
Move test
Move 9gen specific test to proper directory. Change-Id: I6dd493de8e3b8fce30ad0bc610fe419c7fba6f3a Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
This commit is contained in:
@ -5,7 +5,6 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include "shared/source/device/root_device.h"
|
||||
#include "shared/source/os_interface/device_factory.h"
|
||||
#include "shared/test/unit_test/helpers/ult_hw_config.h"
|
||||
|
||||
@ -86,49 +85,6 @@ TEST(clGetPlatformIDsNegativeTests, whenFailToCreateDeviceThenClGetPlatfomsIdsRe
|
||||
platformsImpl.clear();
|
||||
}
|
||||
|
||||
TEST(clGetPlatformIDsMultiPlatformTest, whenCreateDevicesWithDifferentProductFamilyThenClGetPlatformIdsCreatesMultiplePlatformsProperlySorted) {
|
||||
DebugManagerStateRestore restorer;
|
||||
const size_t numRootDevices = 2u;
|
||||
DebugManager.flags.CreateMultipleRootDevices.set(numRootDevices);
|
||||
VariableBackup<decltype(DeviceFactory::createRootDeviceFunc)> createFuncBackup{&DeviceFactory::createRootDeviceFunc};
|
||||
DeviceFactory::createRootDeviceFunc = [](ExecutionEnvironment &executionEnvironment, uint32_t rootDeviceIndex) -> std::unique_ptr<Device> {
|
||||
auto device = std::unique_ptr<Device>(Device::create<RootDevice>(&executionEnvironment, rootDeviceIndex));
|
||||
auto hwInfo = device->getRootDeviceEnvironment().getMutableHardwareInfo();
|
||||
if (rootDeviceIndex == 0) {
|
||||
hwInfo->platform.eProductFamily = IGFX_SKYLAKE;
|
||||
} else {
|
||||
hwInfo->platform.eProductFamily = IGFX_KABYLAKE;
|
||||
}
|
||||
return device;
|
||||
};
|
||||
platformsImpl.clear();
|
||||
|
||||
cl_int retVal = CL_SUCCESS;
|
||||
cl_platform_id platformsRet[2];
|
||||
cl_uint numPlatforms = 0;
|
||||
|
||||
retVal = clGetPlatformIDs(0, nullptr, &numPlatforms);
|
||||
EXPECT_EQ(2u, numPlatforms);
|
||||
EXPECT_EQ(CL_SUCCESS, retVal);
|
||||
|
||||
numPlatforms = 0u;
|
||||
retVal = clGetPlatformIDs(2u, platformsRet, &numPlatforms);
|
||||
EXPECT_EQ(2u, numPlatforms);
|
||||
EXPECT_EQ(CL_SUCCESS, retVal);
|
||||
|
||||
EXPECT_NE(nullptr, platformsRet[0]);
|
||||
auto platform0 = castToObject<Platform>(platformsRet[0]);
|
||||
EXPECT_EQ(1u, platform0->getNumDevices());
|
||||
EXPECT_EQ(IGFX_KABYLAKE, platform0->getClDevice(0)->getHardwareInfo().platform.eProductFamily);
|
||||
EXPECT_EQ(1u, platform0->getClDevice(0)->getRootDeviceIndex());
|
||||
|
||||
EXPECT_NE(nullptr, platformsRet[1]);
|
||||
auto platform1 = castToObject<Platform>(platformsRet[1]);
|
||||
EXPECT_EQ(1u, platform1->getNumDevices());
|
||||
EXPECT_EQ(IGFX_SKYLAKE, platform1->getClDevice(0)->getHardwareInfo().platform.eProductFamily);
|
||||
EXPECT_EQ(0u, platform1->getClDevice(0)->getRootDeviceIndex());
|
||||
platformsImpl.clear();
|
||||
}
|
||||
TEST(clGetPlatformIDsNegativeTests, whenFailToCreatePlatformThenClGetPlatfomsIdsReturnsOutOfHostMemoryError) {
|
||||
VariableBackup<decltype(Platform::createFunc)> createFuncBackup{&Platform::createFunc};
|
||||
Platform::createFunc = [](ExecutionEnvironment &executionEnvironment) -> std::unique_ptr<Platform> {
|
||||
|
@ -7,6 +7,7 @@
|
||||
if(TESTS_GEN9)
|
||||
set(IGDRCL_SRCS_tests_gen9
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/cl_get_platform_ids_tests_gen9.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/coherency_tests_gen9.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/command_stream_receiver_hw_tests_gen9.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/enqueue_kernel_gen9.cpp
|
||||
|
@ -0,0 +1,59 @@
|
||||
/*
|
||||
* Copyright (C) 2020 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#include "shared/source/device/root_device.h"
|
||||
#include "shared/source/os_interface/device_factory.h"
|
||||
|
||||
#include "opencl/test/unit_test/api/cl_api_tests.h"
|
||||
|
||||
using namespace NEO;
|
||||
|
||||
typedef api_tests clGetPlatformIDsTests;
|
||||
|
||||
TEST(clGetPlatformIDsMultiPlatformTest, whenCreateDevicesWithDifferentProductFamilyThenClGetPlatformIdsCreatesMultiplePlatformsProperlySorted) {
|
||||
DebugManagerStateRestore restorer;
|
||||
const size_t numRootDevices = 2u;
|
||||
DebugManager.flags.CreateMultipleRootDevices.set(numRootDevices);
|
||||
VariableBackup<decltype(DeviceFactory::createRootDeviceFunc)> createFuncBackup{&DeviceFactory::createRootDeviceFunc};
|
||||
DeviceFactory::createRootDeviceFunc = [](ExecutionEnvironment &executionEnvironment, uint32_t rootDeviceIndex) -> std::unique_ptr<Device> {
|
||||
auto device = std::unique_ptr<Device>(Device::create<RootDevice>(&executionEnvironment, rootDeviceIndex));
|
||||
auto hwInfo = device->getRootDeviceEnvironment().getMutableHardwareInfo();
|
||||
if (rootDeviceIndex == 0) {
|
||||
hwInfo->platform.eProductFamily = IGFX_SKYLAKE;
|
||||
} else {
|
||||
hwInfo->platform.eProductFamily = IGFX_KABYLAKE;
|
||||
}
|
||||
return device;
|
||||
};
|
||||
platformsImpl.clear();
|
||||
|
||||
cl_int retVal = CL_SUCCESS;
|
||||
cl_platform_id platformsRet[2];
|
||||
cl_uint numPlatforms = 0;
|
||||
|
||||
retVal = clGetPlatformIDs(0, nullptr, &numPlatforms);
|
||||
EXPECT_EQ(2u, numPlatforms);
|
||||
EXPECT_EQ(CL_SUCCESS, retVal);
|
||||
|
||||
numPlatforms = 0u;
|
||||
retVal = clGetPlatformIDs(2u, platformsRet, &numPlatforms);
|
||||
EXPECT_EQ(2u, numPlatforms);
|
||||
EXPECT_EQ(CL_SUCCESS, retVal);
|
||||
|
||||
EXPECT_NE(nullptr, platformsRet[0]);
|
||||
auto platform0 = castToObject<Platform>(platformsRet[0]);
|
||||
EXPECT_EQ(1u, platform0->getNumDevices());
|
||||
EXPECT_EQ(IGFX_KABYLAKE, platform0->getClDevice(0)->getHardwareInfo().platform.eProductFamily);
|
||||
EXPECT_EQ(1u, platform0->getClDevice(0)->getRootDeviceIndex());
|
||||
|
||||
EXPECT_NE(nullptr, platformsRet[1]);
|
||||
auto platform1 = castToObject<Platform>(platformsRet[1]);
|
||||
EXPECT_EQ(1u, platform1->getNumDevices());
|
||||
EXPECT_EQ(IGFX_SKYLAKE, platform1->getClDevice(0)->getHardwareInfo().platform.eProductFamily);
|
||||
EXPECT_EQ(0u, platform1->getClDevice(0)->getRootDeviceIndex());
|
||||
platformsImpl.clear();
|
||||
}
|
Reference in New Issue
Block a user